1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 04:52:54 +02:00
llvm-mirror/test/MC/ARM/register-token-source-loc.s
Oliver Stannard 3d936b9a18 [ARM, Asm] Add diagnostics for general-purpose register operands
This adds diagnostic strings for the ARM general-purpose register
classes, which will be used when these classes are expected by the
assembler, but the provided operand is not valid.

One of these, rGPR, requires C++ code to select the correct error
message, as that class contains different registers in pre-v8 and v8
targets. The rest can all have their diagnostic strings stored in the
tablegen description of them.

Differential revision: https://reviews.llvm.org/D36692

llvm-svn: 315303
2017-10-10 12:31:53 +00:00

13 lines
526 B
ArmAsm

// RUN: not llvm-mc -triple armv6m--none-eabi < %s 2>&1 | FileCheck %s
// Some of these CHECK lines need to uses regexes to that the amount of
// whitespace between the start of the line and the caret is significant.
add sp, r0, #4
// CHECK: error: invalid instruction, any one of the following would fix this:
// CHECK: note: instruction requires: thumb2
// CHECK: note: operand must be a register sp
// CHECK-NEXT: {{^ add sp, r0, #4}}
// CHECK-NEXT: {{^ \^}}
// CHECK: note: too many operands for instruction