summaryrefslogtreecommitdiffstats
path: root/components/nacl
diff options
context:
space:
mode:
authorstichnot <stichnot@chromium.org>2015-11-30 15:44:07 -0800
committerCommit bot <commit-bot@chromium.org>2015-11-30 23:47:11 +0000
commit1884c4c84cc927418c5245c3ce4d1b55684ffced (patch)
tree7088e34efda26472450f8387defe7e462d4f2b1b /components/nacl
parent32ab34968931d86f482c5d805d274b6821dca390 (diff)
downloadchromium_src-1884c4c84cc927418c5245c3ce4d1b55684ffced.zip
chromium_src-1884c4c84cc927418c5245c3ce4d1b55684ffced.tar.gz
chromium_src-1884c4c84cc927418c5245c3ce4d1b55684ffced.tar.bz2
PNaCl: Enable the Subzero translator for x86-32 without a flag.
Tweaks the logic from https://codereview.chromium.org/1005173006/ so that the Subzero translator is always used for O0 translation on x86-32, regardless of the --enable-pnacl-subzero flag. Updates validation cache testing to reflect the use of the Subzero translator nexe. Disables the error handling test under Windows due to http://crbug.com/499878 because the O0 manifest tests now use Subzero. The flag is retained so that it can be used in the future to phase in Subzero for other targets, such as x86-64, arm32, and mips32, in the same way as was done for x86-32. This is a retry of https://codereview.chromium.org/1457183002/ . BUG=532718 TEST= git cl try -b linux_chromium_dbg_32_ng TEST= git cl try -b win_chromium_xp_rel_ng Review URL: https://codereview.chromium.org/1488543004 Cr-Commit-Position: refs/heads/master@{#362272}
Diffstat (limited to 'components/nacl')
-rw-r--r--components/nacl/renderer/ppb_nacl_private_impl.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/components/nacl/renderer/ppb_nacl_private_impl.cc b/components/nacl/renderer/ppb_nacl_private_impl.cc
index dde4ef8..dfc7af8 100644
--- a/components/nacl/renderer/ppb_nacl_private_impl.cc
+++ b/components/nacl/renderer/ppb_nacl_private_impl.cc
@@ -1092,10 +1092,15 @@ PP_Bool ManifestGetProgramURL(PP_Instance instance,
*pp_full_url = ppapi::StringVar::StringToPPVar(full_url);
*pp_uses_nonsfi_mode = PP_FromBool(uses_nonsfi_mode);
// Check if we should use Subzero (x86-32 / non-debugging case for now).
+ // TODO(stichnot): When phasing in Subzero for a new target architecture,
+ // add it behind the --enable-pnacl-subzero flag, and add a clause here:
+ // && base::CommandLine::ForCurrentProcess()->HasSwitch(
+ // switches::kEnablePNaClSubzero)
+ // Also modify the ValidationCacheOfTranslatorNexes test to match. When
+ // Subzero is finally fully released for all sandbox architectures, the
+ // --enable-pnacl-subzero flag can be removed.
if (pnacl_options->opt_level == 0 && !pnacl_options->is_debug &&
- strcmp(GetSandboxArch(), "x86-32") == 0 &&
- base::CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kEnablePNaClSubzero)) {
+ strcmp(GetSandboxArch(), "x86-32") == 0) {
pnacl_options->use_subzero = PP_TRUE;
// Subzero -O2 is closer to LLC -O0, so indicate -O2.
pnacl_options->opt_level = 2;