On Mon, Sep 14, 2015 at 9:12 AM, Peter Zijlstra <pet...@infradead.org> wrote: > On Sun, Sep 13, 2015 at 04:33:39AM +0200, Sedat Dilek wrote: >> > It looks like an inline-optimization bug in CLANG when the compiler's >> > optimization-level is higher than -O2. > >> > [1] >> > http://lists.linuxfoundation.org/pipermail/llvmlinux/2015-September/001355.html >> >> After some discussion on #llvm it turned out to be a known issue in >> LLVMLinux! >> >> Unfortunately, an existing patch [1] got archived which is still >> required to build x86_64 correctly. > >> [1] >> http://git.linuxfoundation.org/?p=llvmlinux.git;a=blob_plain;f=arch/x86_64/patches/ARCHIVE/0029-Fix-ARCH_HWEIGHT-for-compilation-with-clang.patch;hb=HEAD > > As long as LLVM cannot do things like that and requires full function > calls I cannot see it being a sensible compiler to use from a > performance POV. > > There's a fairly large difference between an inline POPCNT instruction > and a full out-of-line function call. > > /me goes back to ignoring LLVM for the time being.
Can you give an example or describe a test-case to check the performance? I have here diverse Linux v4.2 kernels (all have the same kernel-config)... [ llvmlinux-patched ] #1: Compiled with CLANG v3.7 from a self-built llvm-toolchain v3.7.0 #2: Compiled with GCC v4.9 [ unpatched ] #3: Compiled with GCC v4.9 Can you also comment on the effects of CONFIG_CC_OPTIMIZE_FOR_SIZE in case of performance? It is only to reduce binary size or does it also do some "speed" optimization? Thanks in advance. - Sedat - -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/