aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2005-01-31 14:30:34 +0000
committerJan Beulich <jbeulich@novell.com>2005-01-31 14:30:34 +0000
commitca3bc58f0ac01b58c2285752be247766840b0b44 (patch)
tree7e9de9d5f30eb330570eb56ee7952524b6f946e5 /gas/testsuite
parent057f53c1ad39b24d7833c2eb23aec562c8c3a002 (diff)
downloadgdb-ca3bc58f0ac01b58c2285752be247766840b0b44.zip
gdb-ca3bc58f0ac01b58c2285752be247766840b0b44.tar.gz
gdb-ca3bc58f0ac01b58c2285752be247766840b0b44.tar.bz2
gas/
2005-01-31 Jan Beulich <jbeulich@novell.com> * macro.c (buffer_and_nest): Allow 'from' being NULL; handle anything that can end with .endr in that case. Make requiring/permitting pseudo-ops without leading dot closer to the logic in read.c serving the same purpose. (expand_irp): Don't pass a mnemonic to buffer_and_nest as it will be ignored. gas/testsuite/ 2005-01-31 Jan Beulich <jbeulich@novell.com> * gas/macros/repeat.[ds]: New. * gas/macros/macros.exp: Run new test.
Diffstat (limited to 'gas/testsuite')
-rw-r--r--gas/testsuite/ChangeLog5
-rw-r--r--gas/testsuite/gas/macros/macros.exp1
-rw-r--r--gas/testsuite/gas/macros/repeat.d43
-rw-r--r--gas/testsuite/gas/macros/repeat.s53
4 files changed, 102 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index aba29e0..30c9217 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,5 +1,10 @@
2005-01-31 Jan Beulich <jbeulich@novell.com>
+ * gas/macros/repeat.[ds]: New.
+ * gas/macros/macros.exp: Run new test.
+
+2005-01-31 Jan Beulich <jbeulich@novell.com>
+
* gas/macros/badarg.[ls]: New.
* gas/macros/end.[ls]: New.
* gas/macros/redef.[ls]: New.
diff --git a/gas/testsuite/gas/macros/macros.exp b/gas/testsuite/gas/macros/macros.exp
index 100a3a3..8b99de1 100644
--- a/gas/testsuite/gas/macros/macros.exp
+++ b/gas/testsuite/gas/macros/macros.exp
@@ -26,6 +26,7 @@ run_dump_test test3
if { ![istarget *c54x*-*-*] && ![istarget *c4x*-*-*] } {
run_dump_test irp
run_dump_test rept
+ run_dump_test repeat
}
diff --git a/gas/testsuite/gas/macros/repeat.d b/gas/testsuite/gas/macros/repeat.d
new file mode 100644
index 0000000..272e441
--- /dev/null
+++ b/gas/testsuite/gas/macros/repeat.d
@@ -0,0 +1,43 @@
+#objdump: -r
+#name: nested irp/irpc/rept
+
+.*: +file format .*
+
+RELOCATION RECORDS FOR .*
+OFFSET[ ]+TYPE[ ]+VALUE.*
+0+00[ ]+[a-zA-Z0-9_]+[ ]+irp_irp_19
+0+04[ ]+[a-zA-Z0-9_]+[ ]+irp_irp_18
+0+08[ ]+[a-zA-Z0-9_]+[ ]+irp_irp_29
+0+0c[ ]+[a-zA-Z0-9_]+[ ]+irp_irp_28
+0+10[ ]+[a-zA-Z0-9_]+[ ]+irp_irpc_19
+0+14[ ]+[a-zA-Z0-9_]+[ ]+irp_irpc_18
+0+18[ ]+[a-zA-Z0-9_]+[ ]+irp_irpc_29
+0+1c[ ]+[a-zA-Z0-9_]+[ ]+irp_irpc_28
+0+20[ ]+[a-zA-Z0-9_]+[ ]+irp_rept_1
+0+24[ ]+[a-zA-Z0-9_]+[ ]+irp_rept_1
+0+28[ ]+[a-zA-Z0-9_]+[ ]+irp_rept_2
+0+2c[ ]+[a-zA-Z0-9_]+[ ]+irp_rept_2
+0+30[ ]+[a-zA-Z0-9_]+[ ]+irpc_irp_19
+0+34[ ]+[a-zA-Z0-9_]+[ ]+irpc_irp_18
+0+38[ ]+[a-zA-Z0-9_]+[ ]+irpc_irp_29
+0+3c[ ]+[a-zA-Z0-9_]+[ ]+irpc_irp_28
+0+40[ ]+[a-zA-Z0-9_]+[ ]+irpc_irpc_19
+0+44[ ]+[a-zA-Z0-9_]+[ ]+irpc_irpc_18
+0+48[ ]+[a-zA-Z0-9_]+[ ]+irpc_irpc_29
+0+4c[ ]+[a-zA-Z0-9_]+[ ]+irpc_irpc_28
+0+50[ ]+[a-zA-Z0-9_]+[ ]+irpc_rept_1
+0+54[ ]+[a-zA-Z0-9_]+[ ]+irpc_rept_1
+0+58[ ]+[a-zA-Z0-9_]+[ ]+irpc_rept_2
+0+5c[ ]+[a-zA-Z0-9_]+[ ]+irpc_rept_2
+0+60[ ]+[a-zA-Z0-9_]+[ ]+rept_irp_9
+0+64[ ]+[a-zA-Z0-9_]+[ ]+rept_irp_8
+0+68[ ]+[a-zA-Z0-9_]+[ ]+rept_irp_9
+0+6c[ ]+[a-zA-Z0-9_]+[ ]+rept_irp_8
+0+70[ ]+[a-zA-Z0-9_]+[ ]+rept_irpc_9
+0+74[ ]+[a-zA-Z0-9_]+[ ]+rept_irpc_8
+0+78[ ]+[a-zA-Z0-9_]+[ ]+rept_irpc_9
+0+7c[ ]+[a-zA-Z0-9_]+[ ]+rept_irpc_8
+0+80[ ]+[a-zA-Z0-9_]+[ ]+rept_rept
+0+84[ ]+[a-zA-Z0-9_]+[ ]+rept_rept
+0+88[ ]+[a-zA-Z0-9_]+[ ]+rept_rept
+0+8c[ ]+[a-zA-Z0-9_]+[ ]+rept_rept
diff --git a/gas/testsuite/gas/macros/repeat.s b/gas/testsuite/gas/macros/repeat.s
new file mode 100644
index 0000000..70329f7
--- /dev/null
+++ b/gas/testsuite/gas/macros/repeat.s
@@ -0,0 +1,53 @@
+ .irp param1,1,2
+ .irp param2,9,8
+ .long irp_irp_\param1\param2
+ .endr
+ .endr
+
+ .irp param1,1,2
+ .irpc param2,98
+ .long irp_irpc_\param1\param2
+ .endr
+ .endr
+
+ .irp param1,1,2
+ .rept 2
+ .long irp_rept_\param1
+ .endr
+ .endr
+
+ .irpc param1,12
+ .irp param2,9,8
+ .long irpc_irp_\param1\param2
+ .endr
+ .endr
+
+ .irpc param1,12
+ .irpc param2,98
+ .long irpc_irpc_\param1\param2
+ .endr
+ .endr
+
+ .irpc param1,12
+ .rept 2
+ .long irpc_rept_\param1
+ .endr
+ .endr
+
+ .rept 2
+ .irp param2,9,8
+ .long rept_irp_\param2
+ .endr
+ .endr
+
+ .rept 2
+ .irpc param2,98
+ .long rept_irpc_\param2
+ .endr
+ .endr
+
+ .rept 2
+ .rept 2
+ .long rept_rept
+ .endr
+ .endr