[llvm] 0fc8fc7 - [MC,test] Improve nesting macro test

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Sun Jan 5 11:37:21 PST 2025


Author: Fangrui Song
Date: 2025-01-05T11:37:16-08:00
New Revision: 0fc8fc75a9d505dde92c0d6d8826b6384dfb5e2a

URL: https://github.com/llvm/llvm-project/commit/0fc8fc75a9d505dde92c0d6d8826b6384dfb5e2a
DIFF: https://github.com/llvm/llvm-project/commit/0fc8fc75a9d505dde92c0d6d8826b6384dfb5e2a.diff

LOG: [MC,test] Improve nesting macro test

9d94a4eee9d30487c5d6b1478a7195523f6db1ca added support for nested .macro .
Mov the test to macro-nesting.s and add another test to test \+ and \@.

Added: 
    llvm/test/MC/AsmParser/macro-nesting.s

Modified: 
    llvm/test/MC/AsmParser/macro-def-in-instantiation.s

Removed: 
    


################################################################################
diff  --git a/llvm/test/MC/AsmParser/macro-def-in-instantiation.s b/llvm/test/MC/AsmParser/macro-def-in-instantiation.s
index b6df62ea98528c..96ddde824904c1 100644
--- a/llvm/test/MC/AsmParser/macro-def-in-instantiation.s
+++ b/llvm/test/MC/AsmParser/macro-def-in-instantiation.s
@@ -9,22 +9,3 @@
 make_macro .macro,mybyte,a,.byte,\a,.endm
 # CHECK: .byte 42
 mybyte 42
-
-# PR18599
-.macro macro_a
- .macro macro_b
-  .byte 10
-  .macro macro_c
-  .endm
-
-  macro_c
-  .purgem macro_c
- .endm
-
- macro_b
-.endm
-
-# CHECK: .byte 10
-# CHECK: .byte 10
-macro_a
-macro_b

diff  --git a/llvm/test/MC/AsmParser/macro-nesting.s b/llvm/test/MC/AsmParser/macro-nesting.s
new file mode 100644
index 00000000000000..37561a6313c029
--- /dev/null
+++ b/llvm/test/MC/AsmParser/macro-nesting.s
@@ -0,0 +1,45 @@
+# RUN: llvm-mc -triple=x86_64 %s | FileCheck %s
+
+# CHECK:              .globl  inside_at_0
+# CHECK-NEXT:         .globl  inside_plus_0
+# CHECK-NEXT: inside_at_0:
+# CHECK-NEXT: inside_plus_0:
+# CHECK-NEXT:         .globl  after_at_0
+# CHECK-NEXT:         .globl  after_plus_0
+# CHECK-NEXT: after_at_0:
+# CHECK-NEXT: after_plus_0:
+
+.macro outer1
+  .macro inner1
+    .globl inside_at_\@
+    .globl inside_plus_\+
+    inside_at_\@:
+    inside_plus_\+:
+  .endm
+  inner1
+  .globl after_at_\@
+  .globl after_plus_\+
+  after_at_\@:
+  after_plus_\+:
+.endm
+
+outer1
+
+# PR18599
+.macro macro_a
+ .macro macro_b
+  .byte 10
+  .macro macro_c
+  .endm
+
+  macro_c
+  .purgem macro_c
+ .endm
+
+ macro_b
+.endm
+
+# CHECK: .byte 10
+# CHECK: .byte 10
+macro_a
+macro_b


        


More information about the llvm-commits mailing list