[llvm-commits] [llvm] r110543 - /llvm/trunk/lib/Target/README.txt
Nick Lewycky
nicholas at mxc.ca
Sun Aug 8 00:04:25 PDT 2010
Author: nicholas
Date: Sun Aug 8 02:04:25 2010
New Revision: 110543
URL: http://llvm.org/viewvc/llvm-project?rev=110543&view=rev
Log:
Add optimization to Target/README.txt.
Modified:
llvm/trunk/lib/Target/README.txt
Modified: llvm/trunk/lib/Target/README.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/README.txt?rev=110543&r1=110542&r2=110543&view=diff
==============================================================================
--- llvm/trunk/lib/Target/README.txt (original)
+++ llvm/trunk/lib/Target/README.txt Sun Aug 8 02:04:25 2010
@@ -1919,5 +1919,21 @@
ret
.LBB0_2:
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
+}
//===---------------------------------------------------------------------===//
More information about the llvm-commits
mailing list