Add optimization to Target/README.txt.

llvm-svn: 110543
This commit is contained in:
Nick Lewycky 2010-08-08 07:04:25 +00:00
parent 9b41823177
commit bb10e90487
1 changed files with 17 additions and 1 deletions

View File

@ -1919,5 +1919,21 @@ something like the following, which eliminates a branch:
ret ret
.LBB0_2: .LBB0_2:
jmp foo # TAILCALL jmp foo # TAILCALL
//===---------------------------------------------------------------------===//
Given a branch where the two target blocks are identical ("ret i32 %b" in
both), simplifycfg will simplify them away. But not so for a switch statement:
define i32 @f(i32 %a, i32 %b) nounwind readnone {
entry:
switch i32 %a, label %bb3 [
i32 4, label %bb
i32 6, label %bb
]
bb: ; preds = %entry, %entry
ret i32 %b
bb3: ; preds = %entry
ret i32 %b
}
//===---------------------------------------------------------------------===// //===---------------------------------------------------------------------===//