diff options
author | hamaji@chromium.org <hamaji@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-11 21:06:15 +0000 |
---|---|---|
committer | hamaji@chromium.org <hamaji@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-11 21:06:15 +0000 |
commit | c0bf7c29e2b0ca60021249ee7482dc19b4c71258 (patch) | |
tree | 25d9ba38896dd81bcda5ccf9cc69e220ddaab5b9 /third_party | |
parent | 7cfd7fd8f2b73e45f115941f6f26697aea9cf7b7 (diff) | |
download | chromium_src-c0bf7c29e2b0ca60021249ee7482dc19b4c71258.zip chromium_src-c0bf7c29e2b0ca60021249ee7482dc19b4c71258.tar.gz chromium_src-c0bf7c29e2b0ca60021249ee7482dc19b4c71258.tar.bz2 |
Non-SFI NaCl: Fix browser_tests based on libc_free.c
There were two issues with clang:
- Clang emits .data.rel.ro.local for local struct values with
an initializer, which lets the linker to emit a few
relocation info.
- In debug build, clang uses memcpy to copy a structure with
five members. Neither -fno-builtin nor -ffreestanding did
not prevent this issue.
- In release build, clang translates for-loop based zero copy
to memset.
This patch initializes all structures without initializers
or copy. This patch works with GYP_DEFINES=clang=0.
To make sure we will not add memcpy or something in future,
we will build libc_free.nexe with -Wl,--no-undefined.
This also reverts
https://codereview.chromium.org/386543002
to enable the disabled tests.
BUG=392768
TEST=./out/Debug/browser_tests --gtest_filter='*NonSfi*Messaging*'
Review URL: https://codereview.chromium.org/381883002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282697 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party')
0 files changed, 0 insertions, 0 deletions