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

Issue 667763002: Fix handling of relocation names, so that prefix mangling works. (Closed)

Created:
6 years, 2 months ago by Karl
Modified:
6 years, 2 months ago
CC:
native-client-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Visibility:
Public.

Description

Fix handling of relocation names, so that prefix mangling works. Fixes bug in the representation of relocation names (in either global initializers or as constant expressions in code) so that they understand when the name is externally defined. This allows us to test this property using command line arguments, and fixes relocation tests in cross compilations (where externnally referenced names shouldn't be name mangled). BUG= R=jvoung@chromium.org, stichnot@chromium.org Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=df6f9d18fce6750872dba5686ed6032949ca01c6

Patch Set 1 #

Patch Set 2 : Fix nits. #

Total comments: 6

Patch Set 3 : Fix nits. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+402 lines, -90 lines) Patch
M crosstest/test_calling_conv_main.cpp View 3 chunks +8 lines, -8 lines 0 comments Download
M crosstest/test_global.cpp View 1 3 chunks +1 line, -8 lines 0 comments Download
M src/IceCfg.cpp View 1 chunk +1 line, -1 line 0 comments Download
M src/IceConverter.cpp View 3 chunks +23 lines, -13 lines 0 comments Download
M src/IceGlobalInits.h View 1 2 9 chunks +45 lines, -34 lines 0 comments Download
M src/IceGlobalInits.cpp View 7 chunks +21 lines, -10 lines 0 comments Download
M src/IceOperand.cpp View 1 chunk +7 lines, -2 lines 0 comments Download
M src/IceTargetLoweringX8632.cpp View 4 chunks +13 lines, -9 lines 0 comments Download
M src/IceTranslator.cpp View 1 chunk +1 line, -1 line 0 comments Download
M src/PNaClTranslator.cpp View 1 chunk +12 lines, -4 lines 0 comments Download
A tests_lit/reader_tests/extern_globals.ll View 1 2 1 chunk +270 lines, -0 lines 0 comments Download

Messages

Total messages: 6 (1 generated)
Karl
6 years, 2 months ago (2014-10-20 17:08:56 UTC) #2
Jim Stichnoth
LGTM. Fix spelling of "externally" in the commit message. https://codereview.chromium.org/667763002/diff/20001/src/IceGlobalInits.h File src/IceGlobalInits.h (right): https://codereview.chromium.org/667763002/diff/20001/src/IceGlobalInits.h#newcode64 src/IceGlobalInits.h:64: ...
6 years, 2 months ago (2014-10-20 17:45:59 UTC) #3
jvoung (off chromium)
LGTM too https://codereview.chromium.org/667763002/diff/20001/tests_lit/reader_tests/extern_globals.ll File tests_lit/reader_tests/extern_globals.ll (right): https://codereview.chromium.org/667763002/diff/20001/tests_lit/reader_tests/extern_globals.ll#newcode6 tests_lit/reader_tests/extern_globals.ll:6: ; RUN: %lc2i -i %s --insts --args ...
6 years, 2 months ago (2014-10-20 18:10:05 UTC) #4
Karl
Committed patchset #3 (id:40001) manually as df6f9d1 (presubmit successful).
6 years, 2 months ago (2014-10-20 21:09:17 UTC) #5
Karl
6 years, 2 months ago (2014-10-20 21:09:33 UTC) #6
Message was sent while issue was closed.
https://codereview.chromium.org/667763002/diff/20001/src/IceGlobalInits.h
File src/IceGlobalInits.h (right):

https://codereview.chromium.org/667763002/diff/20001/src/IceGlobalInits.h#new...
src/IceGlobalInits.h:64: dump(nullptr, Stream);
On 2014/10/20 17:45:59, stichnot wrote:
> GlobalContext *const Ctx = nullptr;
> dump(Ctx, Stream);
> 
> makes it clearer what the nullptr is.

Done.

https://codereview.chromium.org/667763002/diff/20001/tests_lit/reader_tests/e...
File tests_lit/reader_tests/extern_globals.ll (right):

https://codereview.chromium.org/667763002/diff/20001/tests_lit/reader_tests/e...
tests_lit/reader_tests/extern_globals.ll:6: ; RUN: %lc2i -i %s --insts --args
--allow-uninitialized-globals | FileCheck %s
On 2014/10/20 18:10:05, jvoung wrote:
> Add a comment on why lc2i and not p2i?

Done.

https://codereview.chromium.org/667763002/diff/20001/tests_lit/reader_tests/e...
tests_lit/reader_tests/extern_globals.ll:10: ; ModuleID =
'/tmp/tmpmLtol6/test_global.ll'
On 2014/10/20 18:10:04, jvoung wrote:
> Could probably remove the ModuleID? I guess it depends on how close you want
> this to be to the original source.

Done.

Powered by Google App Engine
This is Rietveld 408576698