Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(560)

Issue 5968010: [gcc] Yet another gen_lowpart code confused by prt_mode != Pmode (Closed)

Created:
10 years ago by eaeltsin
Modified:
9 years, 7 months ago
CC:
native-client-reviews_googlegroups.com
Visibility:
Public.

Description

[gcc] Yet another gen_lowpart code confused by prt_mode != Pmode Test from David Meyer, 64-bit mode with -O1: typedef unsigned int size_t; extern "C" { size_t strlen (const char *); }; class StringRef { private: const char *Data; size_t Length; public: StringRef(const char *Str) : Data(Str), Length(::strlen(Str)) {} }; StringRef GetDLLSuffix() { return &(".so"[1]); } Reports internal error while trying to replace Pmode register with ptr_mode CONST. The change fixes the origin of such a CONST in gen_lowpart_for_combine. This is kinda hacky and clearly not upstreamable... BUG=http://code.google.com/p/nativeclient/issues/detail?id=1279 TEST=see above Committed: http://git.chromium.org/gitweb/?p=nacl-toolchain.git;a=commit;h=ffc2ce5

Patch Set 1 #

Patch Set 2 : ready for code review #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+4 lines, -1 line) Patch
M gcc/gcc/combine.c View 1 chunk +4 lines, -1 line 1 comment Download

Messages

Total messages: 4 (0 generated)
eaeltsin
10 years ago (2010-12-24 13:56:00 UTC) #1
khim
Well, this is clearly not a good fix, but let's commit it to unblock other ...
10 years ago (2010-12-24 14:38:17 UTC) #2
khim
LGTM
10 years ago (2010-12-24 15:17:20 UTC) #3
pasko-google - do not use
10 years ago (2010-12-24 16:13:09 UTC) #4
http://codereview.chromium.org/5968010/diff/2001/gcc/gcc/combine.c
File gcc/gcc/combine.c (right):

http://codereview.chromium.org/5968010/diff/2001/gcc/gcc/combine.c#newcode9895
gcc/gcc/combine.c:9895: /* HACK?
"TODO(eaeltsin)" would be more stylish than "HACK?"

Powered by Google App Engine
This is Rietveld 408576698