| ; RUN: llc -mtriple=x86_64-apple-darwin10 -O0 < %s | FileCheck %s |
| |
| ; test that we print a label that we use. We had a bug where |
| ; we would print the jump, but not the label because it was considered |
| ; a fall through. |
| |
| ; CHECK: jmp LBB0_9 |
| ; CHECK: LBB0_9: ## %cleanup |
| |
| define void @foo() { |
| entry: |
| br i1 undef, label %land.lhs.true, label %if.end11 |
| |
| land.lhs.true: ; preds = %entry |
| br i1 undef, label %if.then, label %if.end11 |
| |
| if.then: ; preds = %land.lhs.true |
| br i1 undef, label %if.then9, label %if.end |
| |
| if.then9: ; preds = %if.then |
| br label %cleanup |
| |
| if.end: ; preds = %if.then |
| br label %cleanup |
| |
| cleanup: ; preds = %if.end, %if.then9 |
| switch i32 undef, label %default [ |
| i32 0, label %cleanup.cont |
| i32 1, label %if.end11 |
| ] |
| |
| cleanup.cont: ; preds = %cleanup |
| br label %if.end11 |
| |
| if.end11: ; preds = %cleanup.cont, %cleanup, %land.lhs.true, %entry |
| ret void |
| |
| default: ; preds = %cleanup |
| br label %if.end11 |
| } |