aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2005-04-18 13:35:46 +0000
committerJan Beulich <jbeulich@novell.com>2005-04-18 13:35:46 +0000
commite6ca91be4f25f03e5b7c8960c34736a31f77c549 (patch)
treee8ce5b990927fe773e5f2c5bd6e26b16402c776d /gas/testsuite
parent0f061b69fbe16702bfa68e580ee7f855ec986dcf (diff)
downloadgdb-e6ca91be4f25f03e5b7c8960c34736a31f77c549.zip
gdb-e6ca91be4f25f03e5b7c8960c34736a31f77c549.tar.gz
gdb-e6ca91be4f25f03e5b7c8960c34736a31f77c549.tar.bz2
gas/
2005-04-18 Jan Beulich <jbeulich@novell.com> * macro.c (free_token): New, freeing all the memory associated with a macro. (do_formals): Move initializers to ... (define_macro): ... here. (delete_macro): Convert passed in name to lower case. Warn when purging macro that doesn't exist. Use hash_jam instead of hash_delete. gas/testsuite/ 2005-04-18 Jan Beulich <jbeulich@novell.com> * gas/macros/purge.[ls]: 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/purge.l7
-rw-r--r--gas/testsuite/gas/macros/purge.s41
4 files changed, 54 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index a41d813..6fe22ce 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2005-04-18 Jan Beulich <jbeulich@novell.com>
+
+ * gas/macros/purge.[ls]: New.
+ * gas/macros/macros.exp: Run new test.
+
2005-04-15 Jan Beulich <jbeulich@novell.com>
* gas/elf/struct.[sd]: New.
diff --git a/gas/testsuite/gas/macros/macros.exp b/gas/testsuite/gas/macros/macros.exp
index 5b924ac..ed8debe 100644
--- a/gas/testsuite/gas/macros/macros.exp
+++ b/gas/testsuite/gas/macros/macros.exp
@@ -78,4 +78,5 @@ case $target_triplet in {
default { run_list_test dot "-alm" }
}
run_list_test end ""
+run_list_test purge "--hash-size=8000"
run_list_test redef ""
diff --git a/gas/testsuite/gas/macros/purge.l b/gas/testsuite/gas/macros/purge.l
new file mode 100644
index 0000000..2b25b2c
--- /dev/null
+++ b/gas/testsuite/gas/macros/purge.l
@@ -0,0 +1,7 @@
+.*: Assembler messages:
+.*:11: Error: .*
+.*:12: Error: .*
+.*:13: Error: .*
+.*:14: Error: .*
+.*:15: Warning: .*
+.*:16: Warning: .*
diff --git a/gas/testsuite/gas/macros/purge.s b/gas/testsuite/gas/macros/purge.s
new file mode 100644
index 0000000..e46eef8
--- /dev/null
+++ b/gas/testsuite/gas/macros/purge.s
@@ -0,0 +1,41 @@
+ .macro MACRO1
+ .endm
+ .macro macro2
+ .endm
+ MACRO1
+ MACRO2
+ macro1
+ macro2
+ .purgem MACRO1
+ .purgem macro2
+ MACRO1
+ MACRO2
+ macro1
+ macro2
+ .purgem macro1
+ .purgem MACRO2
+ .macro macro1
+ .endm
+ .macro MACRO2
+ .endm
+ MACRO1
+ MACRO2
+ macro1
+ macro2
+ .purgem MACRO1
+ .purgem macro2
+
+ .irpc a,ABCDEFGHIJKLMNOPQRSTUVWXYZ
+ .irpc b,ABCDEFGHIJKLMNOPQRSTUVWXYZ
+ .irpc c,ABCDEFGHIJKLMNOPQRSTUVWXYZ
+ .irpc d,ABCDEFGHIJKLMNOPQRSTUVWXYZ
+ .macro \a\b\c\d arg1=0, arg2=0
+ .if \arg1 + \arg2
+ .purgem \a\b\c\d
+ .endif
+ .endm
+ \a\b\c\d 1, 2
+ .endr
+ .endr
+ .endr
+ .endr