| Index: chrome/test/data/nacl/BUILD.gn
|
| diff --git a/chrome/test/data/nacl/BUILD.gn b/chrome/test/data/nacl/BUILD.gn
|
| index 754e19e364de92fecbc5ee66ed1f2b796420a5b9..64e5d25b7b6e506f372f374d9291ba946ec6f188 100644
|
| --- a/chrome/test/data/nacl/BUILD.gn
|
| +++ b/chrome/test/data/nacl/BUILD.gn
|
| @@ -4,6 +4,7 @@
|
|
|
| import("//build/config/features.gni")
|
| import("//build/config/nacl/config.gni")
|
| +import("//build/toolchain/toolchain.gni")
|
| import("//ppapi/native_client/nacl_test_data.gni")
|
|
|
| group("nacl") {
|
| @@ -553,6 +554,19 @@ if (is_linux && is_clang) {
|
| # .exidx sections without this flag.
|
| "-fno-unwind-tables",
|
| ]
|
| +
|
| + # Workaround against LLVM bug.
|
| + # In short, an LTO optimization pass might recognize
|
| + # naive implementations of builtins (such as memset)
|
| + # and replace them with references to the real builtins,
|
| + # which, in the case of -nostdlib, might cause the binary
|
| + # to get undefined references to those symbols.
|
| + #
|
| + # See more details:
|
| + # https://llvm.org/bugs/show_bug.cgi?id=30403
|
| + if (use_thin_lto) {
|
| + ldflags = [ "-Wl,-plugin-opt,O0" ]
|
| + }
|
| }
|
|
|
| executable("nonsfi_libc_free_nexe") {
|
|
|