|
|
DescriptionUpdate LTO flags for Mac.
Specifically:
- Use -all_load to work around http://openradar.appspot.com/20356002
- Disable the verify_order postbuild step when using LTO, as this
step currently fails.
Also update the documentation for the use_lto and use_lto_o2 build flags.
Requires https://codereview.chromium.org/1003273007
Requires https://codereview.chromium.org/1047853005 to build Chrome. We can
build simple targets even without this change.
BUG=471146
R=thakis@chromium.org
Committed: https://crrev.com/059ec677a02907ceac79dd68741b6ed820cd7ff0
Cr-Commit-Position: refs/heads/master@{#323134}
Patch Set 1 #
Messages
Total messages: 10 (1 generated)
lgtm I wonder if this'll Just Work for chrome/ios too.
The CQ bit was checked by pcc@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1045113004/1
Message was sent while issue was closed.
Committed patchset #1 (id:1)
Message was sent while issue was closed.
Patchset 1 (id:??) landed as https://crrev.com/059ec677a02907ceac79dd68741b6ed820cd7ff0 Cr-Commit-Position: refs/heads/master@{#323134}
Message was sent while issue was closed.
On 2015/03/31 21:45:04, Nico wrote: > lgtm > > I wonder if this'll Just Work for chrome/ios too. Doesn't look like it. For Release-iphonesimulator I get: ld: reference to symbol (which has not been assigned an address) _poll in '__ZN4mojo8embedder12_GLOBAL__N_112WaitReadableENS0_14PlatformHandleE' from obj/third_party/mojo/src/mojo/edk/embedder/mojo_system_unittests.platform_channel_pair_posix_unittest.o for architecture x86_64 and for Release-iphoneos I get: 'corei7-avx' is not a recognized processor for this target (ignoring processor) 'corei7-avx' is not a recognized processor for this target (ignoring processor) 'corei7-avx' is not a recognized processor for this target (ignoring processor) 'corei7-avx' is not a recognized processor for this target (ignoring processor) 'corei7-avx' is not a recognized processor for this target (ignoring processor) 'corei7-avx' is not a recognized processor for this target (ignoring processor) Undefined symbols for architecture arm64: "___fixsfsi", referenced from: __uhash_allocate in libicuuc.a(icuuc.uhash.o) "___ledf2", referenced from: -[NSString(CrStringDrawing) cr_stringByElidingToFitSize:] in libgtest.a(gtest.coverage_util_ios.o) "___fixunsdfsi", referenced from: base::PlatformThread::SetThreadPriority(base::PlatformThreadHandle, base::ThreadPriority) in libbase.a(base.platform_thread_mac.o) [ and several more undefined symbol errors ] The corei7-avx errors seem weird as that flag is only supposed to be used for x86 targets. If I remove it I later get the _poll error like with the simulator. Might be another case like https://codereview.chromium.org/1036123003 but I couldn't immediately find anything that is overriding the poll function.
Message was sent while issue was closed.
On 2015/03/31 22:52:33, pcc1 wrote: > On 2015/03/31 21:45:04, Nico wrote: > > lgtm > > > > I wonder if this'll Just Work for chrome/ios too. > > Doesn't look like it. For Release-iphonesimulator I get: > > ld: reference to symbol (which has not been assigned an address) _poll in > '__ZN4mojo8embedder12_GLOBAL__N_112WaitReadableENS0_14PlatformHandleE' from > obj/third_party/mojo/src/mojo/edk/embedder/mojo_system_unittests.platform_channel_pair_posix_unittest.o > for architecture x86_64 > > and for Release-iphoneos I get: > > 'corei7-avx' is not a recognized processor for this target (ignoring processor) > 'corei7-avx' is not a recognized processor for this target (ignoring processor) > 'corei7-avx' is not a recognized processor for this target (ignoring processor) > 'corei7-avx' is not a recognized processor for this target (ignoring processor) > 'corei7-avx' is not a recognized processor for this target (ignoring processor) > 'corei7-avx' is not a recognized processor for this target (ignoring processor) > Undefined symbols for architecture arm64: > "___fixsfsi", referenced from: > __uhash_allocate in libicuuc.a(icuuc.uhash.o) > "___ledf2", referenced from: > -[NSString(CrStringDrawing) cr_stringByElidingToFitSize:] in > libgtest.a(gtest.coverage_util_ios.o) > "___fixunsdfsi", referenced from: > base::PlatformThread::SetThreadPriority(base::PlatformThreadHandle, > base::ThreadPriority) in libbase.a(base.platform_thread_mac.o) > [ and several more undefined symbol errors ] > > The corei7-avx errors seem weird as that flag is only supposed to be used for > x86 targets. If I remove it I later get the _poll error like with the simulator. > Might be another case like https://codereview.chromium.org/1036123003 but I > couldn't immediately find anything that is overriding the poll function. Looks like this was third_party/nss/nspr/pr/src/md/unix/unix.c . Commenting out that definition gets me a little further, now I get: duplicate symbol __ZN3web25BuildUserAgentFromProductERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEE in: libios_web.a(ios_web.user_agent.o) libuser_agent.a(user_agent.user_agent.o) duplicate symbol __ZN7OSCrypt13EncryptStringERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEPS6_ in: libos_crypt.a(os_crypt.os_crypt_mac.o) libos_crypt.a(os_crypt.os_crypt_posix.o) duplicate symbol __ZN7OSCrypt13DecryptStringERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEPS6_ in: libos_crypt.a(os_crypt.os_crypt_mac.o) libos_crypt.a(os_crypt.os_crypt_posix.o) duplicate symbol __ZN7OSCrypt15DecryptString16ERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEPNS1_ItN4base20string16_char_traitsENS4_ItEEEE in: libos_crypt.a(os_crypt.os_crypt_mac.o) libos_crypt.a(os_crypt.os_crypt_posix.o) duplicate symbol __ZN7OSCrypt15EncryptString16ERKNSt3__112basic_stringItN4base20string16_char_traitsENS0_9allocatorItEEEEPNS1_IcNS0_11char_traitsIcEENS4_IcEEEE in: libos_crypt.a(os_crypt.os_crypt_mac.o) libos_crypt.a(os_crypt.os_crypt_posix.o) duplicate symbol __ZN3web25BuildUserAgentFromProductERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEE in: libios_web.a(ios_web.user_agent.o) libuser_agent.a(user_agent.user_agent.o) Giving up now, but these should be easy to fix.
Message was sent while issue was closed.
maybe file a tracking bug with the current state, so that if someone wants to do this they have a continuation they can call On Tue, Mar 31, 2015 at 4:13 PM, <pcc@chromium.org> wrote: > On 2015/03/31 22:52:33, pcc1 wrote: > >> On 2015/03/31 21:45:04, Nico wrote: >> > lgtm >> > >> > I wonder if this'll Just Work for chrome/ios too. >> > > Doesn't look like it. For Release-iphonesimulator I get: >> > > ld: reference to symbol (which has not been assigned an address) _poll in >> '__ZN4mojo8embedder12_GLOBAL__N_112WaitReadableENS0_14PlatformHandleE' >> from >> > > obj/third_party/mojo/src/mojo/edk/embedder/mojo_system_ > unittests.platform_channel_pair_posix_unittest.o > >> for architecture x86_64 >> > > and for Release-iphoneos I get: >> > > 'corei7-avx' is not a recognized processor for this target (ignoring >> > processor) > >> 'corei7-avx' is not a recognized processor for this target (ignoring >> > processor) > >> 'corei7-avx' is not a recognized processor for this target (ignoring >> > processor) > >> 'corei7-avx' is not a recognized processor for this target (ignoring >> > processor) > >> 'corei7-avx' is not a recognized processor for this target (ignoring >> > processor) > >> 'corei7-avx' is not a recognized processor for this target (ignoring >> > processor) > >> Undefined symbols for architecture arm64: >> "___fixsfsi", referenced from: >> __uhash_allocate in libicuuc.a(icuuc.uhash.o) >> "___ledf2", referenced from: >> -[NSString(CrStringDrawing) cr_stringByElidingToFitSize:] in >> libgtest.a(gtest.coverage_util_ios.o) >> "___fixunsdfsi", referenced from: >> base::PlatformThread::SetThreadPriority(base:: >> PlatformThreadHandle, >> base::ThreadPriority) in libbase.a(base.platform_thread_mac.o) >> [ and several more undefined symbol errors ] >> > > The corei7-avx errors seem weird as that flag is only supposed to be used >> for >> x86 targets. If I remove it I later get the _poll error like with the >> > simulator. > >> Might be another case like https://codereview.chromium.org/1036123003 >> but I >> couldn't immediately find anything that is overriding the poll function. >> > > Looks like this was third_party/nss/nspr/pr/src/md/unix/unix.c . > Commenting out > that definition gets me a little further, now I get: > > duplicate symbol > __ZN3web25BuildUserAgentFromProductERKNSt3__112basic_stringIcNS0_11char_ > traitsIcEENS0_9allocatorIcEEEE > in: > libios_web.a(ios_web.user_agent.o) > libuser_agent.a(user_agent.user_agent.o) > duplicate symbol > __ZN7OSCrypt13EncryptStringERKNSt3__112basic_stringIcNS0_ > 11char_traitsIcEENS0_9allocatorIcEEEEPS6_ > in: > libos_crypt.a(os_crypt.os_crypt_mac.o) > libos_crypt.a(os_crypt.os_crypt_posix.o) > duplicate symbol > __ZN7OSCrypt13DecryptStringERKNSt3__112basic_stringIcNS0_ > 11char_traitsIcEENS0_9allocatorIcEEEEPS6_ > in: > libos_crypt.a(os_crypt.os_crypt_mac.o) > libos_crypt.a(os_crypt.os_crypt_posix.o) > duplicate symbol > __ZN7OSCrypt15DecryptString16ERKNSt3__112basic_stringIcNS0_ > 11char_traitsIcEENS0_9allocatorIcEEEEPNS1_ItN4base20string16_char_ > traitsENS4_ItEEEE > in: > libos_crypt.a(os_crypt.os_crypt_mac.o) > libos_crypt.a(os_crypt.os_crypt_posix.o) > duplicate symbol > __ZN7OSCrypt15EncryptString16ERKNSt3__112basic_ > stringItN4base20string16_char_traitsENS0_9allocatorItEEEEPNS1_IcNS0_ > 11char_traitsIcEENS4_IcEEEE > in: > libos_crypt.a(os_crypt.os_crypt_mac.o) > libos_crypt.a(os_crypt.os_crypt_posix.o) > duplicate symbol > __ZN3web25BuildUserAgentFromProductERKNSt3__112basic_stringIcNS0_11char_ > traitsIcEENS0_9allocatorIcEEEE > in: > libios_web.a(ios_web.user_agent.o) > libuser_agent.a(user_agent.user_agent.o) > > Giving up now, but these should be easy to fix. > > https://codereview.chromium.org/1045113004/ > To unsubscribe from this group and stop receiving emails from it, send an email to chromium-reviews+unsubscribe@chromium.org.
Message was sent while issue was closed.
crbug.com/472311 On 2015/03/31 23:14:32, Nico wrote: > maybe file a tracking bug with the current state, so that if someone wants > to do this they have a continuation they can call > > On Tue, Mar 31, 2015 at 4:13 PM, <mailto:pcc@chromium.org> wrote: > > > On 2015/03/31 22:52:33, pcc1 wrote: > > > >> On 2015/03/31 21:45:04, Nico wrote: > >> > lgtm > >> > > >> > I wonder if this'll Just Work for chrome/ios too. > >> > > > > Doesn't look like it. For Release-iphonesimulator I get: > >> > > > > ld: reference to symbol (which has not been assigned an address) _poll in > >> '__ZN4mojo8embedder12_GLOBAL__N_112WaitReadableENS0_14PlatformHandleE' > >> from > >> > > > > obj/third_party/mojo/src/mojo/edk/embedder/mojo_system_ > > unittests.platform_channel_pair_posix_unittest.o > > > >> for architecture x86_64 > >> > > > > and for Release-iphoneos I get: > >> > > > > 'corei7-avx' is not a recognized processor for this target (ignoring > >> > > processor) > > > >> 'corei7-avx' is not a recognized processor for this target (ignoring > >> > > processor) > > > >> 'corei7-avx' is not a recognized processor for this target (ignoring > >> > > processor) > > > >> 'corei7-avx' is not a recognized processor for this target (ignoring > >> > > processor) > > > >> 'corei7-avx' is not a recognized processor for this target (ignoring > >> > > processor) > > > >> 'corei7-avx' is not a recognized processor for this target (ignoring > >> > > processor) > > > >> Undefined symbols for architecture arm64: > >> "___fixsfsi", referenced from: > >> __uhash_allocate in libicuuc.a(icuuc.uhash.o) > >> "___ledf2", referenced from: > >> -[NSString(CrStringDrawing) cr_stringByElidingToFitSize:] in > >> libgtest.a(gtest.coverage_util_ios.o) > >> "___fixunsdfsi", referenced from: > >> base::PlatformThread::SetThreadPriority(base:: > >> PlatformThreadHandle, > >> base::ThreadPriority) in libbase.a(base.platform_thread_mac.o) > >> [ and several more undefined symbol errors ] > >> > > > > The corei7-avx errors seem weird as that flag is only supposed to be used > >> for > >> x86 targets. If I remove it I later get the _poll error like with the > >> > > simulator. > > > >> Might be another case like https://codereview.chromium.org/1036123003 > >> but I > >> couldn't immediately find anything that is overriding the poll function. > >> > > > > Looks like this was third_party/nss/nspr/pr/src/md/unix/unix.c . > > Commenting out > > that definition gets me a little further, now I get: > > > > duplicate symbol > > __ZN3web25BuildUserAgentFromProductERKNSt3__112basic_stringIcNS0_11char_ > > traitsIcEENS0_9allocatorIcEEEE > > in: > > libios_web.a(ios_web.user_agent.o) > > libuser_agent.a(user_agent.user_agent.o) > > duplicate symbol > > __ZN7OSCrypt13EncryptStringERKNSt3__112basic_stringIcNS0_ > > 11char_traitsIcEENS0_9allocatorIcEEEEPS6_ > > in: > > libos_crypt.a(os_crypt.os_crypt_mac.o) > > libos_crypt.a(os_crypt.os_crypt_posix.o) > > duplicate symbol > > __ZN7OSCrypt13DecryptStringERKNSt3__112basic_stringIcNS0_ > > 11char_traitsIcEENS0_9allocatorIcEEEEPS6_ > > in: > > libos_crypt.a(os_crypt.os_crypt_mac.o) > > libos_crypt.a(os_crypt.os_crypt_posix.o) > > duplicate symbol > > __ZN7OSCrypt15DecryptString16ERKNSt3__112basic_stringIcNS0_ > > 11char_traitsIcEENS0_9allocatorIcEEEEPNS1_ItN4base20string16_char_ > > traitsENS4_ItEEEE > > in: > > libos_crypt.a(os_crypt.os_crypt_mac.o) > > libos_crypt.a(os_crypt.os_crypt_posix.o) > > duplicate symbol > > __ZN7OSCrypt15EncryptString16ERKNSt3__112basic_ > > stringItN4base20string16_char_traitsENS0_9allocatorItEEEEPNS1_IcNS0_ > > 11char_traitsIcEENS4_IcEEEE > > in: > > libos_crypt.a(os_crypt.os_crypt_mac.o) > > libos_crypt.a(os_crypt.os_crypt_posix.o) > > duplicate symbol > > __ZN3web25BuildUserAgentFromProductERKNSt3__112basic_stringIcNS0_11char_ > > traitsIcEENS0_9allocatorIcEEEE > > in: > > libios_web.a(ios_web.user_agent.o) > > libuser_agent.a(user_agent.user_agent.o) > > > > Giving up now, but these should be easy to fix. > > > > https://codereview.chromium.org/1045113004/ > > > > To unsubscribe from this group and stop receiving emails from it, send an email > to mailto:chromium-reviews+unsubscribe@chromium.org. |