1 ; Test the GPR constraint "a", which forbids %r0. 2 ; 3 ; RUN: llc < %s -mtriple=s390x-linux-gnu -no-integrated-as | FileCheck %s 4 5 define i64 @f1() { 6 ; CHECK-LABEL: f1: 7 ; CHECK: lhi %r1, 1 8 ; CHECK: blah %r2 %r1 9 ; CHECK: br %r14 10 %val = call i64 asm "blah $0 $1", "=r,a" (i8 1) 11 ret i64 %val 12 } 13 14 define i64 @f2() { 15 ; CHECK-LABEL: f2: 16 ; CHECK: lhi %r1, 2 17 ; CHECK: blah %r2 %r1 18 ; CHECK: br %r14 19 %val = call i64 asm "blah $0 $1", "=r,a" (i16 2) 20 ret i64 %val 21 } 22 23 define i64 @f3() { 24 ; CHECK-LABEL: f3: 25 ; CHECK: lhi %r1, 3 26 ; CHECK: blah %r2 %r1 27 ; CHECK: br %r14 28 %val = call i64 asm "blah $0 $1", "=r,a" (i32 3) 29 ret i64 %val 30 } 31 32 define i64 @f4() { 33 ; CHECK-LABEL: f4: 34 ; CHECK: lghi %r1, 4 35 ; CHECK: blah %r2 %r1 36 ; CHECK: br %r14 37 %val = call i64 asm "blah $0 $1", "=r,a" (i64 4) 38 ret i64 %val 39 } 40