For example: ninja -v -j1 bin/llvm-as [1/1] : && /usr/bin/ccache /home/espindola/inst/clang/bin/clang++ -fcolor-diagnostics -fPIC -fvisibility-inlines-hidden -Wcovered-switch-default -Wnon-virtual-dtor -fno-rtti -O3 -DNDEBUG tools/llvm-as/CMakeFiles/llvm-as.dir/llvm-as.cpp.o -o bin/llvm-as -rdynamic lib/libLLVMAsmParser.a lib/libLLVMBitWriter.a lib/libLLVMCore.a lib/libLLVMSupport.a -lrt -ldl -lpthread && :
Created attachment 10202 [details] simple hack This patch remove -rdynamic from *all* binaries. The impact in very noticeable. The bin directory on linux x86_64 on a Release+Asserts build goes from 254 MB to 239 MB. The patch is just a hack as some binaries require -rdynamic. We need some way for each binary to say if it * always needs -rdynamic (opt for example) * doesn't need -rdynamic (llvm-as for example) * it is an optional feature (clang is the only one I think)
Fixed in 178725.