aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/testsuite/gas/.Sanitize1
-rw-r--r--gas/testsuite/gas/mri/.Sanitize45
-rw-r--r--gas/testsuite/gas/mri/char.d9
-rw-r--r--gas/testsuite/gas/mri/char.s6
-rw-r--r--gas/testsuite/gas/mri/constants.d19
-rw-r--r--gas/testsuite/gas/mri/constants.s14
-rw-r--r--gas/testsuite/gas/mri/equ.d7
-rw-r--r--gas/testsuite/gas/mri/equ.s3
-rw-r--r--gas/testsuite/gas/mri/expr.d11
-rw-r--r--gas/testsuite/gas/mri/expr.s7
-rw-r--r--gas/testsuite/gas/mri/float.d10
-rw-r--r--gas/testsuite/gas/mri/float.s7
-rw-r--r--gas/testsuite/gas/mri/label.d8
-rw-r--r--gas/testsuite/gas/mri/label.s5
14 files changed, 152 insertions, 0 deletions
diff --git a/gas/testsuite/gas/.Sanitize b/gas/testsuite/gas/.Sanitize
index af678de..7f8fc98 100644
--- a/gas/testsuite/gas/.Sanitize
+++ b/gas/testsuite/gas/.Sanitize
@@ -41,6 +41,7 @@ ieee-fp
m68k
m68k-coff
mips
+mri
sparc-solaris
sun4
template
diff --git a/gas/testsuite/gas/mri/.Sanitize b/gas/testsuite/gas/mri/.Sanitize
new file mode 100644
index 0000000..e63b25e
--- /dev/null
+++ b/gas/testsuite/gas/mri/.Sanitize
@@ -0,0 +1,45 @@
+# .Sanitize for devo/gas/testsuite/gas/mri.
+
+# Each directory to survive it's way into a release will need a file
+# like this one called "./.Sanitize". All keyword lines must exist,
+# and must exist in the order specified by this file. Each directory
+# in the tree will be processed, top down, in the following order.
+
+# Hash started lines like this one are comments and will be deleted
+# before anything else is done. Blank lines will also be squashed
+# out.
+
+# The lines between the "Do-first:" line and the "Things-to-keep:"
+# line are executed as a /bin/sh shell script before anything else is
+# done in this
+
+Do-first:
+
+
+# All files listed between the "Things-to-keep:" line and the
+# "Files-to-sed:" line will be kept. All other files will be removed.
+# Directories listed in this section will have their own Sanitize
+# called. Directories not listed will be removed in their entirety
+# with rm -rf.
+
+Things-to-keep:
+
+char.d
+char.s
+constants.d
+constants.s
+equ.d
+equ.s
+expr.d
+expr.s
+float.d
+float.s
+label.d
+label.s
+mri.exp
+
+Things-to-lose:
+
+Do-last:
+
+# End of file.
diff --git a/gas/testsuite/gas/mri/char.d b/gas/testsuite/gas/mri/char.d
new file mode 100644
index 0000000..fa1921a
--- /dev/null
+++ b/gas/testsuite/gas/mri/char.d
@@ -0,0 +1,9 @@
+#objcopy: -O srec
+#name: MRI character constants
+#as: -M
+
+# Test MRI character constants
+
+S0.*
+S113....61616263616263646500000061276200.*
+#pass
diff --git a/gas/testsuite/gas/mri/char.s b/gas/testsuite/gas/mri/char.s
new file mode 100644
index 0000000..7b0a83a
--- /dev/null
+++ b/gas/testsuite/gas/mri/char.s
@@ -0,0 +1,6 @@
+; Test MRI style character constants.
+
+ dc.b 'a'
+ dc.b 'abc'
+ dc.l 'abcde'
+ dc.l 'a''b'
diff --git a/gas/testsuite/gas/mri/constants.d b/gas/testsuite/gas/mri/constants.d
new file mode 100644
index 0000000..8674d10
--- /dev/null
+++ b/gas/testsuite/gas/mri/constants.d
@@ -0,0 +1,19 @@
+#nm: --extern-only
+#name: MRI constants
+#as: -M
+
+# Test MRI style constants
+
+0*a A s01
+0*a A s02
+0*a A s03
+0*a A s04
+0*a A s05
+0*a A s06
+0*a A s07
+0*a A s08
+0*a A s09
+0*61 A s10
+0*61 A s11
+0*61626364 A s12
+0*61276200 A s13
diff --git a/gas/testsuite/gas/mri/constants.s b/gas/testsuite/gas/mri/constants.s
new file mode 100644
index 0000000..02cccb9
--- /dev/null
+++ b/gas/testsuite/gas/mri/constants.s
@@ -0,0 +1,14 @@
+ xdef s01,s02,s03,s04,s05,s06,s07,s08,s09,s10,s11,s12,s13
+s01 equ %1010
+s02 equ 1010b
+s03 equ @12
+s04 equ 12o
+s05 equ 12q
+s06 equ 10
+s07 equ 10d
+s08 equ $a
+s09 equ 0ah
+s10 equ 'a'
+s11 equ A'a'
+s12 equ 'abcd'
+s13 equ 'a''b'
diff --git a/gas/testsuite/gas/mri/equ.d b/gas/testsuite/gas/mri/equ.d
new file mode 100644
index 0000000..e5f9a86
--- /dev/null
+++ b/gas/testsuite/gas/mri/equ.d
@@ -0,0 +1,7 @@
+#nm: --extern-only
+#name: MRI EQU
+#as: -M
+
+# Test the MRI EQU directive
+
+0*4 A SYMBOL
diff --git a/gas/testsuite/gas/mri/equ.s b/gas/testsuite/gas/mri/equ.s
new file mode 100644
index 0000000..a6512a1
--- /dev/null
+++ b/gas/testsuite/gas/mri/equ.s
@@ -0,0 +1,3 @@
+# Test the MRI EQU directive
+ XDEF SYMBOL
+SYMBOL EQU 4
diff --git a/gas/testsuite/gas/mri/expr.d b/gas/testsuite/gas/mri/expr.d
new file mode 100644
index 0000000..7ec6ac9
--- /dev/null
+++ b/gas/testsuite/gas/mri/expr.d
@@ -0,0 +1,11 @@
+#nm: --extern-only
+#name: MRI expressions
+#as: -M
+
+# Test expressions in MRI mode
+
+00* A s1
+00*12 A s2
+00*6 A s3
+ff* A s4
+00* A s5
diff --git a/gas/testsuite/gas/mri/expr.s b/gas/testsuite/gas/mri/expr.s
new file mode 100644
index 0000000..05ab020
--- /dev/null
+++ b/gas/testsuite/gas/mri/expr.s
@@ -0,0 +1,7 @@
+; Test expressions in MRI mode
+ xdef s1,s2,s3,s4,s5
+s1 equ 1 > 2
+s2 equ 3 << 1 * 3
+s3 equ 5 !! 3
+s4 equ "0
+s5 equ (1 >= 2) ! (1 <> 1)
diff --git a/gas/testsuite/gas/mri/float.d b/gas/testsuite/gas/mri/float.d
new file mode 100644
index 0000000..20d2087
--- /dev/null
+++ b/gas/testsuite/gas/mri/float.d
@@ -0,0 +1,10 @@
+#objcopy: -O srec
+#name: MRI floating point constants
+#as: -M
+
+# Test MRI floating point constants
+
+S0.*
+S118....123456789ABCDEF03F800000412000004120000042.*
+S10.....C80000.*
+#pass
diff --git a/gas/testsuite/gas/mri/float.s b/gas/testsuite/gas/mri/float.s
new file mode 100644
index 0000000..637f9c6
--- /dev/null
+++ b/gas/testsuite/gas/mri/float.s
@@ -0,0 +1,7 @@
+; Test floating point constants in MRI mode.
+
+ dc.d :1234_5678_9abc_def0
+ dc.s 1.0
+ dc.s 1e1
+ dc.s 1_e_1
+ dc.s 1E2
diff --git a/gas/testsuite/gas/mri/label.d b/gas/testsuite/gas/mri/label.d
new file mode 100644
index 0000000..9ce5858
--- /dev/null
+++ b/gas/testsuite/gas/mri/label.d
@@ -0,0 +1,8 @@
+#nm: --extern-only
+#name: MRI label
+#as: -M
+
+# Test using an MRI style label
+
+0000* T LABEL
+[ ]*U SYMBOL
diff --git a/gas/testsuite/gas/mri/label.s b/gas/testsuite/gas/mri/label.s
new file mode 100644
index 0000000..b05ec2a
--- /dev/null
+++ b/gas/testsuite/gas/mri/label.s
@@ -0,0 +1,5 @@
+; Test using an MRI style label
+* Also test MRI style comments
+! And another comment
+ XDEF LABEL
+LABEL DC.L SYMBOL ; And yet another comment