1; RUN: not llc -mtriple=x86_64-linux-gnu -o - %s 2>&1 | FileCheck %s 2 3; Test that the blockaddress with X, i, or s constraint is printed as an 4; immediate (.Ltmp0). 5; Test that blockaddress with n constraint is an error. 6define void @test1() { 7; CHECK: error: constraint 'n' expects an integer constant expression 8; CHECK-LABEL: test1: 9; CHECK: # %bb.0: # %entry 10; CHECK-NEXT: .Ltmp0: # Block address taken 11; CHECK-NEXT: # %bb.1: # %b 12; CHECK-NEXT: #APP 13; CHECK-NEXT: # .Ltmp0 .Ltmp0 .Ltmp0 14; CHECK-NEXT: #NO_APP 15; CHECK-NEXT: retq 16entry: 17 br label %b 18b: 19 call void asm "# $0 $1 $2", "X,i,s"(ptr blockaddress(@test1, %b), ptr blockaddress(@test1, %b), ptr blockaddress(@test1, %b)) 20 call void asm "# $0", "n"(ptr blockaddress(@test1, %b)) 21 ret void 22} 23