summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir')
-rw-r--r--llvm/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir58
1 files changed, 55 insertions, 3 deletions
diff --git a/llvm/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir b/llvm/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir
index d1a461107d8..3c343193557 100644
--- a/llvm/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir
+++ b/llvm/test/CodeGen/AArch64/GlobalISel/select-fp-casts.mir
@@ -7,7 +7,9 @@
define void @fptrunc_s16_s64_fpr() { ret void }
define void @fptrunc_s32_s64_fpr() { ret void }
- define void @fpext() { ret void }
+ define void @fpext_s32_s16_fpr() { ret void }
+ define void @fpext_s64_s16_fpr() { ret void }
+ define void @fpext_s64_s32_fpr() { ret void }
define void @sitofp_s32_s32_fpr() { ret void }
define void @sitofp_s32_s64_fpr() { ret void }
@@ -106,8 +108,58 @@ body: |
...
---
-# CHECK-LABEL: name: fpext
-name: fpext
+# CHECK-LABEL: name: fpext_s32_s16_fpr
+name: fpext_s32_s16_fpr
+legalized: true
+regBankSelected: true
+
+# CHECK: registers:
+# CHECK: - { id: 0, class: fpr16, preferred-register: '' }
+# CHECK: - { id: 1, class: fpr32, preferred-register: '' }
+registers:
+ - { id: 0, class: fpr }
+ - { id: 1, class: fpr }
+
+# CHECK: body:
+# CHECK: %0 = COPY %h0
+# CHECK: %1 = FCVTSHr %0
+body: |
+ bb.0:
+ liveins: %h0
+
+ %0(s16) = COPY %h0
+ %1(s32) = G_FPEXT %0
+ %s0 = COPY %1(s32)
+...
+
+---
+# CHECK-LABEL: name: fpext_s64_s16_fpr
+name: fpext_s64_s16_fpr
+legalized: true
+regBankSelected: true
+
+# CHECK: registers:
+# CHECK: - { id: 0, class: fpr16, preferred-register: '' }
+# CHECK: - { id: 1, class: fpr64, preferred-register: '' }
+registers:
+ - { id: 0, class: fpr }
+ - { id: 1, class: fpr }
+
+# CHECK: body:
+# CHECK: %0 = COPY %h0
+# CHECK: %1 = FCVTDHr %0
+body: |
+ bb.0:
+ liveins: %h0
+
+ %0(s16) = COPY %h0
+ %1(s64) = G_FPEXT %0
+ %d0 = COPY %1(s64)
+...
+
+---
+# CHECK-LABEL: name: fpext_s64_s32_fpr
+name: fpext_s64_s32_fpr
legalized: true
regBankSelected: true
OpenPOWER on IntegriCloud