diff --git a/webrtc/build/common.gypi b/webrtc/build/common.gypi index cbc398e400..00bd4d4576 100644 --- a/webrtc/build/common.gypi +++ b/webrtc/build/common.gypi @@ -112,6 +112,11 @@ 'mips_fpu%' : 1, 'enable_android_opensl%': 1, + # Link-Time Optimizations + # Executes code generation at link-time instead of compile-time + # https://gcc.gnu.org/wiki/LinkTimeOptimization + 'use_lto%': 0, + 'conditions': [ ['build_with_chromium==1', { # Exclude pulse audio on Chromium since its prerequisites don't require diff --git a/webrtc/common_audio/common_audio.gyp b/webrtc/common_audio/common_audio.gyp index 58b9bb983d..ae3bacb77c 100644 --- a/webrtc/common_audio/common_audio.gyp +++ b/webrtc/common_audio/common_audio.gyp @@ -184,6 +184,15 @@ 'signal_processing/min_max_operations_neon.S', 'signal_processing/vector_scaling_operations_neon.S', ], + 'conditions': [ + # Disable LTO in common_audio_neon target due to compiler bug + ['use_lto==1', { + 'cflags!': [ + '-flto', + '-ffat-lto-objects', + ], + }], + ], }, ], # targets }], diff --git a/webrtc/modules/audio_coding/codecs/isac/fix/source/isacfix.gypi b/webrtc/modules/audio_coding/codecs/isac/fix/source/isacfix.gypi index 7010b1ee47..7bef170d48 100644 --- a/webrtc/modules/audio_coding/codecs/isac/fix/source/isacfix.gypi +++ b/webrtc/modules/audio_coding/codecs/isac/fix/source/isacfix.gypi @@ -140,6 +140,15 @@ 'lpc_masking_model_neon.S', 'transform_neon.S', ], + 'conditions': [ + # Disable LTO in isac_neon target due to compiler bug + ['use_lto==1', { + 'cflags!': [ + '-flto', + '-ffat-lto-objects', + ], + }], + ], }, ], }], diff --git a/webrtc/modules/audio_processing/audio_processing.gypi b/webrtc/modules/audio_processing/audio_processing.gypi index 98d437f8bf..9298f118f9 100644 --- a/webrtc/modules/audio_processing/audio_processing.gypi +++ b/webrtc/modules/audio_processing/audio_processing.gypi @@ -222,6 +222,13 @@ ], 'includes!': ['../../build/arm_neon.gypi',], }], + # Disable LTO in audio_processing_neon target due to compiler bug + ['use_lto==1', { + 'cflags!': [ + '-flto', + '-ffat-lto-objects', + ], + }], ], }], }],