1*c2f9885aSKoakuma;; Test reserving argument registers. 2*c2f9885aSKoakuma; RUN: not llc < %s -mtriple=sparc-linux-gnu -mattr=+reserve-o0 2>&1 | FileCheck %s --check-prefixes=CHECK-RESERVED-O0 3*c2f9885aSKoakuma; RUN: not llc < %s -mtriple=sparc64-linux-gnu -mattr=+reserve-o0 2>&1 | FileCheck %s --check-prefixes=CHECK-RESERVED-O0 4*c2f9885aSKoakuma; RUN: not llc < %s -mtriple=sparc-linux-gnu -mattr=+reserve-i0 2>&1 | FileCheck %s --check-prefixes=CHECK-RESERVED-I0 5*c2f9885aSKoakuma; RUN: not llc < %s -mtriple=sparc64-linux-gnu -mattr=+reserve-i0 2>&1 | FileCheck %s --check-prefixes=CHECK-RESERVED-I0 6*c2f9885aSKoakuma 7*c2f9885aSKoakuma; CHECK-RESERVED-O0: error: 8*c2f9885aSKoakuma; CHECK-RESERVED-O0-SAME: SPARC doesn't support function calls if any of the argument registers is reserved. 9*c2f9885aSKoakuma; CHECK-RESERVED-I0: error: 10*c2f9885aSKoakuma; CHECK-RESERVED-I0-SAME: SPARC doesn't support function calls if any of the argument registers is reserved. 11*c2f9885aSKoakumadefine void @call_function() { 12*c2f9885aSKoakuma call void @foo() 13*c2f9885aSKoakuma ret void 14*c2f9885aSKoakuma} 15*c2f9885aSKoakumadeclare void @foo() 16*c2f9885aSKoakuma 17*c2f9885aSKoakuma; CHECK-RESERVED-O0: error: 18*c2f9885aSKoakuma; CHECK-RESERVED-O0-SAME: SPARC doesn't support function calls if any of the argument registers is reserved. 19*c2f9885aSKoakuma; CHECK-RESERVED-I0: error: 20*c2f9885aSKoakuma; CHECK-RESERVED-I0-SAME: SPARC doesn't support function calls if any of the argument registers is reserved. 21*c2f9885aSKoakumadefine void @call_function_with_arg(i8 %in) { 22*c2f9885aSKoakuma call void @bar(i8 %in) 23*c2f9885aSKoakuma ret void 24*c2f9885aSKoakuma} 25*c2f9885aSKoakumadeclare void @bar(i8) 26