[Lldb-commits] [lldb] r255240 - Switch to gold linker on android x86, x86_64, arm

Tamas Berghammer via lldb-commits lldb-commits at lists.llvm.org
Thu Dec 10 03:02:52 PST 2015


Author: tberghammer
Date: Thu Dec 10 05:02:51 2015
New Revision: 255240

URL: http://llvm.org/viewvc/llvm-project?rev=255240&view=rev
Log:
Switch to gold linker on android x86, x86_64, arm

These architectures already using the gold linker for the android
framework and switching to gold gives us the opportunity to enable ICF.

Safe ICF (identical code folding) reduces the size of an optimized and
striped binary by ~5%.

Differential revision: http://reviews.llvm.org/D15379

Modified:
    lldb/trunk/cmake/platforms/Android.cmake

Modified: lldb/trunk/cmake/platforms/Android.cmake
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/cmake/platforms/Android.cmake?rev=255240&r1=255239&r2=255240&view=diff
==============================================================================
--- lldb/trunk/cmake/platforms/Android.cmake (original)
+++ lldb/trunk/cmake/platforms/Android.cmake Thu Dec 10 05:02:51 2015
@@ -121,6 +121,13 @@ elseif( ANDROID_ABI STREQUAL "mips" )
  endif()
 endif()
 
+# Use gold linker and enable safe ICF in case of x86, x86_64 and arm
+if ( ANDROID_ABI STREQUAL "x86"    OR
+     ANDROID_ABI STREQUAL "x86_64" OR
+     ANDROID_ABI STREQUAL "armeabi")
+ set( ANDROID_LINKER_FLAGS "${ANDROID_LINKER_FLAGS} -fuse-ld=gold -Wl,--icf=safe" )
+endif()
+
 if( NOT LLVM_BUILD_STATIC )
  # PIE is required for API 21+ so we enable it if we're not statically linking
  # unfortunately, it is not supported before API 16 so we need to do something




More information about the lldb-commits mailing list