llvm-project/llvm/test/CodeGen/X86/pr11202.ll

23 lines
723 B
LLVM

; RUN: llc < %s -mtriple=x86_64-pc-linux | FileCheck %s
@bb = constant [1 x i8*] [i8* blockaddress(@main, %l2)]
define void @main() {
entry:
br label %l1
l1: ; preds = %l2, %entry
%a = zext i1 false to i32
br label %l2
l2: ; preds = %l1
%b = zext i1 false to i32
br label %l1
}
; It is correct for either l1 or l2 to be removed.
; If l2 is removed, the message should be "Address of block that was removed by CodeGen"
; If l1 is removed, it should be "Block address taken."
; CHECK: .Ltmp0: # {{Address of block that was removed by CodeGen|Block address taken}}
; CHECK: .quad .Ltmp0