Go to file
Evan Cheng 05fc35e275 Add a late optimization to BranchFolding that hoist common instruction sequences
at the start of basic blocks to their common predecessor. It's actually quite
common (e.g. about 50 times in JM/lencod) and has shown to be a nice code size
benefit. e.g.

        pushq   %rax
        testl   %edi, %edi
        jne     LBB0_2
## BB#1:
        xorb    %al, %al
        popq    %rdx
        ret
LBB0_2:
        xorb    %al, %al
        callq   _foo
        popq    %rdx
        ret

=>

        pushq   %rax
        xorb    %al, %al
        testl   %edi, %edi
        je      LBB0_2
## BB#1:
        callq   _foo
LBB0_2:
        popq    %rdx
        ret

rdar://9145558

llvm-svn: 131172
2011-05-11 01:03:01 +00:00
clang Use a heralded conversion to bool in inline-asm constraints. 2011-05-10 23:39:47 +00:00
compiler-rt Check architectures to make sure that we can build for all of them 2011-05-09 20:24:43 +00:00
debuginfo-tests Test case for r130373. 2011-04-28 02:23:17 +00:00
libcxx Updated type_traits and the type_traits design doc with recent work done in clang. 2011-05-09 19:21:17 +00:00
libcxxabi initial import 2011-05-05 15:27:28 +00:00
lldb Add more docstrings for get_GPRs(frame), getFPRs(frame), and get_ESRs(frame). 2011-05-10 23:01:44 +00:00
llvm Add a late optimization to BranchFolding that hoist common instruction sequences 2011-05-11 01:03:01 +00:00
polly ScopInfo: Do not return reference to member variable 'domain'. 2011-05-06 19:52:19 +00:00