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

Issue 1740033002: Force __pnacl_pso_root to be an external declaration. (Closed)

Created:
4 years, 9 months ago by Sean Klein
Modified:
4 years, 9 months ago
CC:
native-client-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Force __pnacl_pso_root to be an external declaration. This CL updates "isPNaClABIExternalName" -- Subzero checked for the symbol "__pnacl_pso_root" as a function, but it is a declaration, and should be checked as one. Additionally, when the PNaClTranslator is verifying the linkage of declarations, allow "__pnacl_pso_root" to be flipped to external as a special case. TEST=pnacl-translate -pso --use-sz -arch x86-32-nonsfi test_pll.final.pso BUG=https://bugs.chromium.org/p/nativeclient/issues/detail?id=4351 R=jpp@chromium.org Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=352db9354e9c30f99c6f87674f70a6f23a9ef7eb

Patch Set 1 #

Patch Set 2 : Removing unused argument #

Total comments: 6

Patch Set 3 : Code Review #

Total comments: 4

Patch Set 4 : Relocated location of forcing external. Made isPNaClABIExternalName public. #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+26 lines, -5 lines) Patch
M src/IceGlobalInits.h View 1 2 3 5 chunks +20 lines, -5 lines 1 comment Download
M src/PNaClTranslator.cpp View 1 2 3 1 chunk +6 lines, -0 lines 1 comment Download

Messages

Total messages: 12 (4 generated)
Sean Klein
4 years, 9 months ago (2016-02-26 00:58:32 UTC) #3
Mark Seaborn
https://codereview.chromium.org/1740033002/diff/20001/src/IceGlobalInits.h File src/IceGlobalInits.h (right): https://codereview.chromium.org/1740033002/diff/20001/src/IceGlobalInits.h#newcode157 src/IceGlobalInits.h:157: if (isPNaClABIExternalName() || isIntrinsicName(Ctx)) This check is actually backwards. ...
4 years, 9 months ago (2016-02-26 01:56:57 UTC) #4
Sean Klein
https://codereview.chromium.org/1740033002/diff/20001/src/IceGlobalInits.h File src/IceGlobalInits.h (right): https://codereview.chromium.org/1740033002/diff/20001/src/IceGlobalInits.h#newcode157 src/IceGlobalInits.h:157: if (isPNaClABIExternalName() || isIntrinsicName(Ctx)) This is small (and related) ...
4 years, 9 months ago (2016-02-26 02:28:06 UTC) #5
John
https://codereview.chromium.org/1740033002/diff/40001/src/IceGlobalInits.h File src/IceGlobalInits.h (right): https://codereview.chromium.org/1740033002/diff/40001/src/IceGlobalInits.h#newcode456 src/IceGlobalInits.h:456: const char *Name = getName().c_str(); static constexpr char PnaclPsoRoot[] ...
4 years, 9 months ago (2016-02-26 18:40:53 UTC) #7
Sean Klein
https://codereview.chromium.org/1740033002/diff/40001/src/IceGlobalInits.h File src/IceGlobalInits.h (right): https://codereview.chromium.org/1740033002/diff/40001/src/IceGlobalInits.h#newcode456 src/IceGlobalInits.h:456: const char *Name = getName().c_str(); On 2016/02/26 18:40:53, John ...
4 years, 9 months ago (2016-02-26 19:45:04 UTC) #8
John
lgtm https://codereview.chromium.org/1740033002/diff/60001/src/IceGlobalInits.h File src/IceGlobalInits.h (right): https://codereview.chromium.org/1740033002/diff/60001/src/IceGlobalInits.h#newcode207 src/IceGlobalInits.h:207: static constexpr char Start[] = "_start"; thanks! :)
4 years, 9 months ago (2016-02-26 19:48:37 UTC) #9
Sean Klein
Committed patchset #4 (id:60001) manually as 352db9354e9c30f99c6f87674f70a6f23a9ef7eb (presubmit successful).
4 years, 9 months ago (2016-02-26 22:34:44 UTC) #11
Mark Seaborn
4 years, 9 months ago (2016-02-26 23:18:58 UTC) #12
Message was sent while issue was closed.
https://codereview.chromium.org/1740033002/diff/60001/src/PNaClTranslator.cpp
File src/PNaClTranslator.cpp (right):

https://codereview.chromium.org/1740033002/diff/60001/src/PNaClTranslator.cpp...
src/PNaClTranslator.cpp:483:
Decl->setLinkage(llvm::GlobalValue::ExternalLinkage);
It looks like you're doing this for functions, but that's not ideal -- you
should only do this for GlobalVariables.

Powered by Google App Engine
This is Rietveld 408576698