summaryrefslogtreecommitdiffstats
path: root/binutils-2.25/gas/testsuite/gas/i860/dual03.s
diff options
context:
space:
mode:
Diffstat (limited to 'binutils-2.25/gas/testsuite/gas/i860/dual03.s')
-rw-r--r--binutils-2.25/gas/testsuite/gas/i860/dual03.s46
1 files changed, 46 insertions, 0 deletions
diff --git a/binutils-2.25/gas/testsuite/gas/i860/dual03.s b/binutils-2.25/gas/testsuite/gas/i860/dual03.s
new file mode 100644
index 00000000..96c31342
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/i860/dual03.s
@@ -0,0 +1,46 @@
+// A larger dual-mode test, from the programmer's reference manual.
+// This uses Intel syntax, as in the manual.
+
+// Single-precision vector sum
+ fld.d r0(r16),f20
+ mov -2,r21
+ d.pfadd.ss f0,f0,f0
+ adds -6,r17,r17
+ d.pfadd.ss f0,f0,f0
+ bla r21,r17,L1
+ d.pfadd.ss f0,f0,f0
+ fld.d 8(r16)++,f22
+L1:
+ d.pfadd.ss f20,f30,f30
+ bla r21,r17,L2
+ d.pfadd.ss f21,f31,f31
+ fld.d 8(r16)++,f20
+ d.pfadd.ss f20,f30,f30
+ br S
+ d.pfadd.ss f21,f31,f31
+ nop
+L2:
+ d.pfadd.ss f22,f30,f30
+ bla r21,r17,L1
+ d.pfadd.ss f23,f31,f31
+ fld.d 8(r16)++,f22
+ d.pfadd.ss f20,f30,f30
+ nop
+ d.pfadd.ss f21,f31,f31
+ nop
+S:
+ pfadd.ss f22,f30,f30
+ mov -4,r21
+ pfadd.ss f23,f31,f31
+ bte r21,r17,DONE
+ fld.l 8(r16)++,f20
+ pfadd.ss f20,f30,f30
+DONE:
+ pfadd.ss f0,f0,f30
+ pfadd.ss f30,f31,f31
+ pfadd.ss f0,f0,f30
+ pfadd.ss f0,f0,f0
+ pfadd.ss f0,f0,f31
+ fadd.ss f30,f31,f16
+
+