aboutsummaryrefslogtreecommitdiff
path: root/sim/testsuite/frv/nfmsubs.cgs
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/frv/nfmsubs.cgs')
-rw-r--r--sim/testsuite/frv/nfmsubs.cgs227
1 files changed, 227 insertions, 0 deletions
diff --git a/sim/testsuite/frv/nfmsubs.cgs b/sim/testsuite/frv/nfmsubs.cgs
new file mode 100644
index 0000000..1ae87e3
--- /dev/null
+++ b/sim/testsuite/frv/nfmsubs.cgs
@@ -0,0 +1,227 @@
+# frv testcase for nfmsubs $GRi,$GRj,$GRk
+# mach: frv
+# as(frv): -mcpu=frv
+
+ .include "testutils.inc"
+
+ float_constants
+ start
+ load_float_constants
+
+ .global nfmsubs
+nfmsubs:
+ set_fr_fr fr16,fr1
+ nfmsubs fr16,fr4,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr8,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr12,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr16,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr20,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr24,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr28,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr32,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr36,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr40,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr44,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr16,fr48,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+
+ nfmsubs fr20,fr4,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr8,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr12,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr16,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr20,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr24,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr28,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr32,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr36,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr40,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr44,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ nfmsubs fr20,fr48,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr0,fr1
+ test_fr_fr fr1,fr0
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr4,fr1
+ test_fr_fr fr1,fr4
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr8,fr1
+ test_fr_fr fr1,fr8
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr12,fr1
+ test_fr_fr fr1,fr12
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr16,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr20,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr24,fr1
+ test_fr_fr fr1,fr24
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr28,fr1
+ test_fr_fr fr1,fr28
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr32,fr1
+ test_fr_fr fr1,fr32
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr36,fr1
+ test_fr_fr fr1,fr36
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr40,fr1
+ test_fr_fr fr1,fr40
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr44,fr1
+ test_fr_fr fr1,fr44
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr48,fr1
+ test_fr_fr fr1,fr48
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr16,fr1
+ nfmsubs fr28,fr52,fr1
+ test_fr_fr fr1,fr52
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+
+ set_fr_fr fr32,fr1
+ nfmsubs fr8,fr8,fr1
+ test_fr_fr fr1,fr8
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+ set_fr_fr fr36,fr1
+ nfmsubs fr36,fr36,fr1
+ test_fr_fr fr1,fr40
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+
+ nfmsubs fr32,fr36,fr1
+ test_fr_fr fr1,fr16
+ test_fr_fr fr1,fr20
+ test_spr_immed 0,fner1
+ test_spr_immed 0,fner0
+
+ ; TODO test cases to set ne flags
+ pass