1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 12:02:58 +02:00
llvm-mirror/test/MC/Mips/mips_directives_bad.s
Simon Atanasyan 558745488f [mips] Stop parsing a .set assignment if the first argument is not an identifier
Before this fix the following code triggers two error messages. The
second one is at least useless:

  test.s:1:9: error: expected identifier after .set
    .set  123, $a0
          ^
  test-set.s:1:9: error: unexpected token, expected comma
    .set  123, $a0
          ^

llvm-svn: 333402
2018-05-29 09:51:22 +00:00

70 lines
2.3 KiB
ArmAsm

# Error checking for malformed directives
# RUN: not llvm-mc -triple mips-unknown-unknown %s 2>&1 | FileCheck %s
.abicalls should have no operands
# CHECK: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected end of statement
# CHECK-NEXT: .abicalls should have no operands
# CHECK-NEXT: ^
# We don't know yet how to represent a list of options
# pic2 will eventually be legal so we will probably want
# to change it to something silly.
# Blank option operand
.option
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected identifier
# CHECK-NEXT: .option
# CHECK-NEXT: ^
# Numeric option operand
.option 2
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected identifier
# CHECK-NEXT: .option 2
# CHECK-NEXT: ^
# Register option operand
.option $2
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected identifier
# CHECK-NEXT: .option $2
# CHECK-NEXT: ^
.option WithBadOption
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: warning: unknown option, expected 'pic0' or 'pic2'
# CHECK-NEXT: .option WithBadOption
# CHECK-NEXT: ^
.option pic0,
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected end of statement
# CHECK-NEXT: .option pic0,
# CHECK-NEXT: ^
.option pic0,pic2
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected end of statement
# CHECK-NEXT: .option pic0,pic2
# CHECK-NEXT: ^
.option pic0 pic2
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected end of statement
# CHECK-NEXT: .option pic0 pic2
# CHECK-NEXT: ^
.option pic2,
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected end of statement
# CHECK-NEXT: .option pic2,
# CHECK-NEXT: ^
.option pic2 pic3
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected end of statement
# CHECK-NEXT: .option pic2 pic3
# CHECK-NEXT: ^
.set 123, $a0
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: expected identifier after .set
# CHECK-NEXT: .set 123
# CHECK-NEXT: ^
.set reg.
# CHECK-NEXT: :{{[0-9]+}}:{{[0-9]+}}: error: unexpected token, expected comma
# CHECK-NEXT: .set reg.
# CHECK-NEXT: ^