[binutils-gdb] macro nesting testcases

Alan Modra amodra@sourceware.org
Fri Jan 3 02:57:02 GMT 2025


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c935dfcc798e89f6ed3fa390eefc9452681243b0

commit c935dfcc798e89f6ed3fa390eefc9452681243b0
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jan 3 12:48:51 2025 +1030

    macro nesting testcases
    
    Fix a bunch of regressions.  Don't start anything besides a label in
    first column, don't name macros the same as directives, and make
    labels global.

Diff:
---
 gas/testsuite/gas/macros/nesting1.s | 19 ++++++++++---------
 gas/testsuite/gas/macros/nesting2.s | 11 ++++++-----
 gas/testsuite/gas/macros/nesting3.s | 17 +++++++++--------
 3 files changed, 25 insertions(+), 22 deletions(-)

diff --git a/gas/testsuite/gas/macros/nesting1.s b/gas/testsuite/gas/macros/nesting1.s
index 3d415e1ef62..dda24800756 100644
--- a/gas/testsuite/gas/macros/nesting1.s
+++ b/gas/testsuite/gas/macros/nesting1.s
@@ -1,14 +1,15 @@
 	.text
-.macro entry fname
+ .macro entry fname
+	.global \fname
 \fname:
-.endm
+ .endm
 
-.macro func fname, t
- entry \fname
- .macro data
-  .dc.\()\t 0
+ .macro func1 fname, t
+	entry \fname
+ .macro data1
+	.dc.\()\t 0
+ .endm
+	data1
  .endm
- data
-.endm
 
-func foo, a
+	func1 foo, a
diff --git a/gas/testsuite/gas/macros/nesting2.s b/gas/testsuite/gas/macros/nesting2.s
index ff8a7f4f75a..af9e1bb35c4 100644
--- a/gas/testsuite/gas/macros/nesting2.s
+++ b/gas/testsuite/gas/macros/nesting2.s
@@ -1,10 +1,11 @@
-.macro function name
- .macro endfunc
+ .macro function name
+ .macro endfunction
  .endm
 	.text
+	.global \name
 \name:
-.endm
+ .endm
 
-function foo
+	function foo
 	.dc.a 0
-endfunc
+	endfunction
diff --git a/gas/testsuite/gas/macros/nesting3.s b/gas/testsuite/gas/macros/nesting3.s
index 4488009dd5f..befc06fc9ac 100644
--- a/gas/testsuite/gas/macros/nesting3.s
+++ b/gas/testsuite/gas/macros/nesting3.s
@@ -1,13 +1,14 @@
 	.text
-.macro func
+ .macro func1
 	foo
-.endm
+ .endm
 
-.macro do_foo
-.macro foo
+ .macro do_foo
+ .macro foo
+	.global foo
 foo:
 	.dc.a 0
-.endm
-.endm
-do_foo
-func
+ .endm
+ .endm
+	do_foo
+	func1


More information about the Binutils-cvs mailing list