diff options
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/Mips/interrupt-attr-64-error.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/Mips/interrupt-attr-64-fail.ll | 11 | ||||
-rw-r--r-- | llvm/test/CodeGen/Mips/interrupt-attr-args-error.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/Mips/interrupt-attr-args-fail.ll | 11 | ||||
-rw-r--r-- | llvm/test/CodeGen/Mips/interrupt-attr-error.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/Mips/interrupt-attr-fail.ll | 11 |
6 files changed, 27 insertions, 33 deletions
diff --git a/llvm/test/CodeGen/Mips/interrupt-attr-64-error.ll b/llvm/test/CodeGen/Mips/interrupt-attr-64-error.ll new file mode 100644 index 00000000000..830c199d91d --- /dev/null +++ b/llvm/test/CodeGen/Mips/interrupt-attr-64-error.ll @@ -0,0 +1,9 @@ +; RUN: not llc -mcpu=mips64r6 -march=mipsel -relocation-model=static < %s 2>%t +; RUN: FileCheck %s < %t + +; CHECK: LLVM ERROR: "interrupt" attribute is only supported for the O32 ABI on MIPS32R2+ at the present time. +define i32 @isr_sw0() #0 { + ret i32 0 +} + +attributes #0 = { "interrupt"="sw0" } diff --git a/llvm/test/CodeGen/Mips/interrupt-attr-64-fail.ll b/llvm/test/CodeGen/Mips/interrupt-attr-64-fail.ll deleted file mode 100644 index 49929d218e5..00000000000 --- a/llvm/test/CodeGen/Mips/interrupt-attr-64-fail.ll +++ /dev/null @@ -1,11 +0,0 @@ -; RUN: llc -mcpu=mips64r6 -march=mipsel -relocation-model=static -o - %s | FileCheck %s -; XFAIL: * - -define void @isr_sw0() #0 { - call void bitcast (void (...)* @write to void ()*)() -} - -declare void @write(...) - -attributes #0 = { "interrupt"="sw0" } - diff --git a/llvm/test/CodeGen/Mips/interrupt-attr-args-error.ll b/llvm/test/CodeGen/Mips/interrupt-attr-args-error.ll new file mode 100644 index 00000000000..993629bdbcd --- /dev/null +++ b/llvm/test/CodeGen/Mips/interrupt-attr-args-error.ll @@ -0,0 +1,9 @@ +; RUN: not llc -mcpu=mips32r2 -march=mipsel -relocation-model=static < %s 2> %t +; RUN: FileCheck %s < %t + +; CHECK: LLVM ERROR: Functions with the interrupt attribute cannot have arguments! +define i32 @isr_sw0(i8 signext %n) #0 { + ret i32 0 +} + +attributes #0 = { "interrupt"="sw0" } diff --git a/llvm/test/CodeGen/Mips/interrupt-attr-args-fail.ll b/llvm/test/CodeGen/Mips/interrupt-attr-args-fail.ll deleted file mode 100644 index 9f15a15ca9c..00000000000 --- a/llvm/test/CodeGen/Mips/interrupt-attr-args-fail.ll +++ /dev/null @@ -1,11 +0,0 @@ -; RUN: llc -mcpu=mips32r2 -march=mipsel -relocation-model=static -o - %s | FileCheck %s -; XFAIL: * - -define void @isr_sw0(i8 signext %n) #0 { - call void bitcast (void (...)* @write to void ()*)() -} - -declare void @write(...) - -attributes #0 = { "interrupt"="sw0" } - diff --git a/llvm/test/CodeGen/Mips/interrupt-attr-error.ll b/llvm/test/CodeGen/Mips/interrupt-attr-error.ll new file mode 100644 index 00000000000..f35e98ea14b --- /dev/null +++ b/llvm/test/CodeGen/Mips/interrupt-attr-error.ll @@ -0,0 +1,9 @@ +; RUN: not llc -mcpu=mips32 -march=mipsel -relocation-model=static < %s 2>%t +; RUN: FileCheck %s < %t + +; CHECK: LLVM ERROR: "interrupt" attribute is not supported on pre-MIPS32R2 or MIPS16 targets. +define i32 @isr_sw0() #0 { + ret i32 0 +} + +attributes #0 = { "interrupt"="sw0" } diff --git a/llvm/test/CodeGen/Mips/interrupt-attr-fail.ll b/llvm/test/CodeGen/Mips/interrupt-attr-fail.ll deleted file mode 100644 index d3914ee86f6..00000000000 --- a/llvm/test/CodeGen/Mips/interrupt-attr-fail.ll +++ /dev/null @@ -1,11 +0,0 @@ -; RUN: llc -mcpu=mips32 -march=mipsel -relocation-model=static -o - %s | FileCheck %s -; XFAIL: * - -define void @isr_sw0() #0 { - call void bitcast (void (...)* @write to void ()*)() -} - -declare void @write(...) - -attributes #0 = { "interrupt"="sw0" } - |