llvm-project/llvm/test/tools/llvm-ml/label_errors.asm
Sergei Barannikov 1799a714a7 [llvm-ml] Disallow '{' and '}' at the start of a statement
'{', '}' and (conditionally) '*' were allowed at the start of a
statement. This behavior was copied from AsmParser, where they were
added to support Hexagon bundles (braces) and BFP memory instructions
(the star).
MASM dialect is x86-specific and does not allow these symbols to be
used at the beginning of an instruction.

Worth noting that '{' is a valid first character in AT&T syntax
(e.g. "{vex} vpmadd52huq ..."); MASM variant is to omit the braces.

Reviewed By: epastor

Differential Revision: https://reviews.llvm.org/D142321
2023-01-25 20:44:00 +03:00

9 lines
308 B
NASM

; RUN: not llvm-ml -filetype=s %s /Fo - 2>&1 \
; RUN: | FileCheck %s --implicit-check-not="{{[0-9]+:[0-9]+: error:}}"
.code
; These used to be valid label names.
{: ; CHECK: [[@LINE]]:1: error: unexpected token at start of statement
}: ; CHECK: [[@LINE]]:1: error: unexpected token at start of statement