From d22a419da2aec60ceb84eff489d4f64f7395c73d Mon Sep 17 00:00:00 2001 From: Fangrui Song Date: Thu, 11 Jul 2024 22:02:26 -0700 Subject: [PATCH] [MC,test] Improve .altmacro test --- llvm/test/MC/AsmParser/altmacro-arg.s | 42 +++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 llvm/test/MC/AsmParser/altmacro-arg.s diff --git a/llvm/test/MC/AsmParser/altmacro-arg.s b/llvm/test/MC/AsmParser/altmacro-arg.s new file mode 100644 index 000000000000000..9c91a15b4d155cd --- /dev/null +++ b/llvm/test/MC/AsmParser/altmacro-arg.s @@ -0,0 +1,42 @@ +# RUN: rm -rf %t && split-file %s %t && cd %t +# RUN: llvm-mc -triple=x86_64 a.s | FileCheck %s +# RUN: llvm-mc -triple=x86_64 b.s | FileCheck %s --check-prefix=CHECK1 + +#--- a.s +.altmacro +# CHECK: ja .Ltmp0 +# CHECK-NEXT: xorq %rax, %rax +# CHECK: .data +# CHECK-NEXT: .ascii "b cc rbx" +# CHECK-NEXT: .ascii "ara rax rax raxx" +.macro gen a, ra, rax + ja 1f + xorq %rax, %rax +1: +.data + .ascii "\a \ra \rax" + .ascii "a\()ra ra\()x rax raxx" +.endm +gen b, cc, rbx + +#--- b.s +.altmacro +# CHECK1: 1 1 ._a&a +# CHECK1-NEXT: 1 2 ._a&a $b&b +# CHECK1-NEXT: \$b \$b +.irp ._a,1 + .print "\._a \._a& ._a&a" + .irp $b,2 + .print "\._a \$b ._a&a $b&b" + .endr + .print "\$b \$b&" +.endr + +# CHECK1: 1 1& ._a&a +# CHECK1-NEXT: \$b \$b& +.noaltmacro +.irp ._a,1 + .print "\._a \._a& ._a&a" + .print "\$b \$b&" +.endr +.altmacro