summaryrefslogtreecommitdiff
path: root/test/CodeGen/MBlaze/fsl.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/MBlaze/fsl.ll')
-rw-r--r--test/CodeGen/MBlaze/fsl.ll319
1 files changed, 0 insertions, 319 deletions
diff --git a/test/CodeGen/MBlaze/fsl.ll b/test/CodeGen/MBlaze/fsl.ll
deleted file mode 100644
index 5444f82dd63c2..0000000000000
--- a/test/CodeGen/MBlaze/fsl.ll
+++ /dev/null
@@ -1,319 +0,0 @@
-; Ensure that the FSL instrinsic instruction generate single FSL instructions
-; at the machine level. Additionally, ensure that dynamic values use the
-; dynamic version of the instructions and that constant values use the
-; constant version of the instructions.
-;
-; RUN: llc -O3 < %s -march=mblaze | FileCheck %s
-
-declare i32 @llvm.mblaze.fsl.get(i32 %port)
-declare i32 @llvm.mblaze.fsl.aget(i32 %port)
-declare i32 @llvm.mblaze.fsl.cget(i32 %port)
-declare i32 @llvm.mblaze.fsl.caget(i32 %port)
-declare i32 @llvm.mblaze.fsl.eget(i32 %port)
-declare i32 @llvm.mblaze.fsl.eaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.ecget(i32 %port)
-declare i32 @llvm.mblaze.fsl.ecaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.nget(i32 %port)
-declare i32 @llvm.mblaze.fsl.naget(i32 %port)
-declare i32 @llvm.mblaze.fsl.ncget(i32 %port)
-declare i32 @llvm.mblaze.fsl.ncaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.neget(i32 %port)
-declare i32 @llvm.mblaze.fsl.neaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.necget(i32 %port)
-declare i32 @llvm.mblaze.fsl.necaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tget(i32 %port)
-declare i32 @llvm.mblaze.fsl.taget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tcget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tcaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.teget(i32 %port)
-declare i32 @llvm.mblaze.fsl.teaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tecget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tecaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tnget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tnaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tncget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tncaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tneget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tneaget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tnecget(i32 %port)
-declare i32 @llvm.mblaze.fsl.tnecaget(i32 %port)
-
-declare void @llvm.mblaze.fsl.put(i32 %value, i32 %port)
-declare void @llvm.mblaze.fsl.aput(i32 %value, i32 %port)
-declare void @llvm.mblaze.fsl.cput(i32 %value, i32 %port)
-declare void @llvm.mblaze.fsl.caput(i32 %value, i32 %port)
-declare void @llvm.mblaze.fsl.nput(i32 %value, i32 %port)
-declare void @llvm.mblaze.fsl.naput(i32 %value, i32 %port)
-declare void @llvm.mblaze.fsl.ncput(i32 %value, i32 %port)
-declare void @llvm.mblaze.fsl.ncaput(i32 %value, i32 %port)
-declare void @llvm.mblaze.fsl.tput(i32 %port)
-declare void @llvm.mblaze.fsl.taput(i32 %port)
-declare void @llvm.mblaze.fsl.tcput(i32 %port)
-declare void @llvm.mblaze.fsl.tcaput(i32 %port)
-declare void @llvm.mblaze.fsl.tnput(i32 %port)
-declare void @llvm.mblaze.fsl.tnaput(i32 %port)
-declare void @llvm.mblaze.fsl.tncput(i32 %port)
-declare void @llvm.mblaze.fsl.tncaput(i32 %port)
-
-define void @fsl_get(i32 %port) {
- ; CHECK: fsl_get:
- %v0 = call i32 @llvm.mblaze.fsl.get(i32 %port)
- ; CHECK: getd
- %v1 = call i32 @llvm.mblaze.fsl.aget(i32 %port)
- ; CHECK-NEXT: agetd
- %v2 = call i32 @llvm.mblaze.fsl.cget(i32 %port)
- ; CHECK-NEXT: cgetd
- %v3 = call i32 @llvm.mblaze.fsl.caget(i32 %port)
- ; CHECK-NEXT: cagetd
- %v4 = call i32 @llvm.mblaze.fsl.eget(i32 %port)
- ; CHECK-NEXT: egetd
- %v5 = call i32 @llvm.mblaze.fsl.eaget(i32 %port)
- ; CHECK-NEXT: eagetd
- %v6 = call i32 @llvm.mblaze.fsl.ecget(i32 %port)
- ; CHECK-NEXT: ecgetd
- %v7 = call i32 @llvm.mblaze.fsl.ecaget(i32 %port)
- ; CHECK-NEXT: ecagetd
- %v8 = call i32 @llvm.mblaze.fsl.nget(i32 %port)
- ; CHECK-NEXT: ngetd
- %v9 = call i32 @llvm.mblaze.fsl.naget(i32 %port)
- ; CHECK-NEXT: nagetd
- %v10 = call i32 @llvm.mblaze.fsl.ncget(i32 %port)
- ; CHECK-NEXT: ncgetd
- %v11 = call i32 @llvm.mblaze.fsl.ncaget(i32 %port)
- ; CHECK-NEXT: ncagetd
- %v12 = call i32 @llvm.mblaze.fsl.neget(i32 %port)
- ; CHECK-NEXT: negetd
- %v13 = call i32 @llvm.mblaze.fsl.neaget(i32 %port)
- ; CHECK-NEXT: neagetd
- %v14 = call i32 @llvm.mblaze.fsl.necget(i32 %port)
- ; CHECK-NEXT: necgetd
- %v15 = call i32 @llvm.mblaze.fsl.necaget(i32 %port)
- ; CHECK-NEXT: necagetd
- %v16 = call i32 @llvm.mblaze.fsl.tget(i32 %port)
- ; CHECK-NEXT: tgetd
- %v17 = call i32 @llvm.mblaze.fsl.taget(i32 %port)
- ; CHECK-NEXT: tagetd
- %v18 = call i32 @llvm.mblaze.fsl.tcget(i32 %port)
- ; CHECK-NEXT: tcgetd
- %v19 = call i32 @llvm.mblaze.fsl.tcaget(i32 %port)
- ; CHECK-NEXT: tcagetd
- %v20 = call i32 @llvm.mblaze.fsl.teget(i32 %port)
- ; CHECK-NEXT: tegetd
- %v21 = call i32 @llvm.mblaze.fsl.teaget(i32 %port)
- ; CHECK-NEXT: teagetd
- %v22 = call i32 @llvm.mblaze.fsl.tecget(i32 %port)
- ; CHECK-NEXT: tecgetd
- %v23 = call i32 @llvm.mblaze.fsl.tecaget(i32 %port)
- ; CHECK-NEXT: tecagetd
- %v24 = call i32 @llvm.mblaze.fsl.tnget(i32 %port)
- ; CHECK-NEXT: tngetd
- %v25 = call i32 @llvm.mblaze.fsl.tnaget(i32 %port)
- ; CHECK-NEXT: tnagetd
- %v26 = call i32 @llvm.mblaze.fsl.tncget(i32 %port)
- ; CHECK-NEXT: tncgetd
- %v27 = call i32 @llvm.mblaze.fsl.tncaget(i32 %port)
- ; CHECK-NEXT: tncagetd
- %v28 = call i32 @llvm.mblaze.fsl.tneget(i32 %port)
- ; CHECK-NEXT: tnegetd
- %v29 = call i32 @llvm.mblaze.fsl.tneaget(i32 %port)
- ; CHECK-NEXT: tneagetd
- %v30 = call i32 @llvm.mblaze.fsl.tnecget(i32 %port)
- ; CHECK-NEXT: tnecgetd
- %v31 = call i32 @llvm.mblaze.fsl.tnecaget(i32 %port)
- ; CHECK-NEXT: tnecagetd
- ret void
- ; CHECK: rtsd
-}
-
-define void @fslc_get() {
- ; CHECK: fslc_get:
- %v0 = call i32 @llvm.mblaze.fsl.get(i32 1)
- ; CHECK: get
- %v1 = call i32 @llvm.mblaze.fsl.aget(i32 1)
- ; CHECK-NOT: agetd
- ; CHECK: aget
- %v2 = call i32 @llvm.mblaze.fsl.cget(i32 1)
- ; CHECK-NOT: cgetd
- ; CHECK: cget
- %v3 = call i32 @llvm.mblaze.fsl.caget(i32 1)
- ; CHECK-NOT: cagetd
- ; CHECK: caget
- %v4 = call i32 @llvm.mblaze.fsl.eget(i32 1)
- ; CHECK-NOT: egetd
- ; CHECK: eget
- %v5 = call i32 @llvm.mblaze.fsl.eaget(i32 1)
- ; CHECK-NOT: eagetd
- ; CHECK: eaget
- %v6 = call i32 @llvm.mblaze.fsl.ecget(i32 1)
- ; CHECK-NOT: ecgetd
- ; CHECK: ecget
- %v7 = call i32 @llvm.mblaze.fsl.ecaget(i32 1)
- ; CHECK-NOT: ecagetd
- ; CHECK: ecaget
- %v8 = call i32 @llvm.mblaze.fsl.nget(i32 1)
- ; CHECK-NOT: ngetd
- ; CHECK: nget
- %v9 = call i32 @llvm.mblaze.fsl.naget(i32 1)
- ; CHECK-NOT: nagetd
- ; CHECK: naget
- %v10 = call i32 @llvm.mblaze.fsl.ncget(i32 1)
- ; CHECK-NOT: ncgetd
- ; CHECK: ncget
- %v11 = call i32 @llvm.mblaze.fsl.ncaget(i32 1)
- ; CHECK-NOT: ncagetd
- ; CHECK: ncaget
- %v12 = call i32 @llvm.mblaze.fsl.neget(i32 1)
- ; CHECK-NOT: negetd
- ; CHECK: neget
- %v13 = call i32 @llvm.mblaze.fsl.neaget(i32 1)
- ; CHECK-NOT: neagetd
- ; CHECK: neaget
- %v14 = call i32 @llvm.mblaze.fsl.necget(i32 1)
- ; CHECK-NOT: necgetd
- ; CHECK: necget
- %v15 = call i32 @llvm.mblaze.fsl.necaget(i32 1)
- ; CHECK-NOT: necagetd
- ; CHECK: necaget
- %v16 = call i32 @llvm.mblaze.fsl.tget(i32 1)
- ; CHECK-NOT: tgetd
- ; CHECK: tget
- %v17 = call i32 @llvm.mblaze.fsl.taget(i32 1)
- ; CHECK-NOT: tagetd
- ; CHECK: taget
- %v18 = call i32 @llvm.mblaze.fsl.tcget(i32 1)
- ; CHECK-NOT: tcgetd
- ; CHECK: tcget
- %v19 = call i32 @llvm.mblaze.fsl.tcaget(i32 1)
- ; CHECK-NOT: tcagetd
- ; CHECK: tcaget
- %v20 = call i32 @llvm.mblaze.fsl.teget(i32 1)
- ; CHECK-NOT: tegetd
- ; CHECK: teget
- %v21 = call i32 @llvm.mblaze.fsl.teaget(i32 1)
- ; CHECK-NOT: teagetd
- ; CHECK: teaget
- %v22 = call i32 @llvm.mblaze.fsl.tecget(i32 1)
- ; CHECK-NOT: tecgetd
- ; CHECK: tecget
- %v23 = call i32 @llvm.mblaze.fsl.tecaget(i32 1)
- ; CHECK-NOT: tecagetd
- ; CHECK: tecaget
- %v24 = call i32 @llvm.mblaze.fsl.tnget(i32 1)
- ; CHECK-NOT: tngetd
- ; CHECK: tnget
- %v25 = call i32 @llvm.mblaze.fsl.tnaget(i32 1)
- ; CHECK-NOT: tnagetd
- ; CHECK: tnaget
- %v26 = call i32 @llvm.mblaze.fsl.tncget(i32 1)
- ; CHECK-NOT: tncgetd
- ; CHECK: tncget
- %v27 = call i32 @llvm.mblaze.fsl.tncaget(i32 1)
- ; CHECK-NOT: tncagetd
- ; CHECK: tncaget
- %v28 = call i32 @llvm.mblaze.fsl.tneget(i32 1)
- ; CHECK-NOT: tnegetd
- ; CHECK: tneget
- %v29 = call i32 @llvm.mblaze.fsl.tneaget(i32 1)
- ; CHECK-NOT: tneagetd
- ; CHECK: tneaget
- %v30 = call i32 @llvm.mblaze.fsl.tnecget(i32 1)
- ; CHECK-NOT: tnecgetd
- ; CHECK: tnecget
- %v31 = call i32 @llvm.mblaze.fsl.tnecaget(i32 1)
- ; CHECK-NOT: tnecagetd
- ; CHECK: tnecaget
- ret void
- ; CHECK: rtsd
-}
-
-define void @putfsl(i32 %value, i32 %port) {
- ; CHECK: putfsl:
- call void @llvm.mblaze.fsl.put(i32 %value, i32 %port)
- ; CHECK: putd
- call void @llvm.mblaze.fsl.aput(i32 %value, i32 %port)
- ; CHECK-NEXT: aputd
- call void @llvm.mblaze.fsl.cput(i32 %value, i32 %port)
- ; CHECK-NEXT: cputd
- call void @llvm.mblaze.fsl.caput(i32 %value, i32 %port)
- ; CHECK-NEXT: caputd
- call void @llvm.mblaze.fsl.nput(i32 %value, i32 %port)
- ; CHECK-NEXT: nputd
- call void @llvm.mblaze.fsl.naput(i32 %value, i32 %port)
- ; CHECK-NEXT: naputd
- call void @llvm.mblaze.fsl.ncput(i32 %value, i32 %port)
- ; CHECK-NEXT: ncputd
- call void @llvm.mblaze.fsl.ncaput(i32 %value, i32 %port)
- ; CHECK-NEXT: ncaputd
- call void @llvm.mblaze.fsl.tput(i32 %port)
- ; CHECK-NEXT: tputd
- call void @llvm.mblaze.fsl.taput(i32 %port)
- ; CHECK-NEXT: taputd
- call void @llvm.mblaze.fsl.tcput(i32 %port)
- ; CHECK-NEXT: tcputd
- call void @llvm.mblaze.fsl.tcaput(i32 %port)
- ; CHECK-NEXT: tcaputd
- call void @llvm.mblaze.fsl.tnput(i32 %port)
- ; CHECK-NEXT: tnputd
- call void @llvm.mblaze.fsl.tnaput(i32 %port)
- ; CHECK-NEXT: tnaputd
- call void @llvm.mblaze.fsl.tncput(i32 %port)
- ; CHECK-NEXT: tncputd
- call void @llvm.mblaze.fsl.tncaput(i32 %port)
- ; CHECK-NEXT: tncaputd
- ret void
- ; CHECK: rtsd
-}
-
-define void @putfsl_const(i32 %value) {
- ; CHECK: putfsl_const:
- call void @llvm.mblaze.fsl.put(i32 %value, i32 1)
- ; CHECK-NOT: putd
- ; CHECK: put
- call void @llvm.mblaze.fsl.aput(i32 %value, i32 1)
- ; CHECK-NOT: aputd
- ; CHECK: aput
- call void @llvm.mblaze.fsl.cput(i32 %value, i32 1)
- ; CHECK-NOT: cputd
- ; CHECK: cput
- call void @llvm.mblaze.fsl.caput(i32 %value, i32 1)
- ; CHECK-NOT: caputd
- ; CHECK: caput
- call void @llvm.mblaze.fsl.nput(i32 %value, i32 1)
- ; CHECK-NOT: nputd
- ; CHECK: nput
- call void @llvm.mblaze.fsl.naput(i32 %value, i32 1)
- ; CHECK-NOT: naputd
- ; CHECK: naput
- call void @llvm.mblaze.fsl.ncput(i32 %value, i32 1)
- ; CHECK-NOT: ncputd
- ; CHECK: ncput
- call void @llvm.mblaze.fsl.ncaput(i32 %value, i32 1)
- ; CHECK-NOT: ncaputd
- ; CHECK: ncaput
- call void @llvm.mblaze.fsl.tput(i32 1)
- ; CHECK-NOT: tputd
- ; CHECK: tput
- call void @llvm.mblaze.fsl.taput(i32 1)
- ; CHECK-NOT: taputd
- ; CHECK: taput
- call void @llvm.mblaze.fsl.tcput(i32 1)
- ; CHECK-NOT: tcputd
- ; CHECK: tcput
- call void @llvm.mblaze.fsl.tcaput(i32 1)
- ; CHECK-NOT: tcaputd
- ; CHECK: tcaput
- call void @llvm.mblaze.fsl.tnput(i32 1)
- ; CHECK-NOT: tnputd
- ; CHECK: tnput
- call void @llvm.mblaze.fsl.tnaput(i32 1)
- ; CHECK-NOT: tnaputd
- ; CHECK: tnaput
- call void @llvm.mblaze.fsl.tncput(i32 1)
- ; CHECK-NOT: tncputd
- ; CHECK: tncput
- call void @llvm.mblaze.fsl.tncaput(i32 1)
- ; CHECK-NOT: tncaputd
- ; CHECK: tncaput
- ret void
- ; CHECK: rtsd
-}