[PATCH] D31530: [ARM] Use new assembler diags for ARM

Oliver Stannard via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 14 08:56:16 PDT 2017


olista01 updated this revision to Diff 110986.
olista01 added a comment.
Herald added subscribers: kristof.beyls, javed.absar.

After discussing this with someone in our documentation team, I've changed the wording of the messages slightly. They now look like this (with some patches adding diagnostic text for more operands, which I'm almost ready to upstream):

  <stdin>:2:3: error: invalid instruction, any one of the following would fix this:
    adds r0, r1, #8
    ^
  <stdin>:2:3: note: instruction requires: thumb2
    adds r0, r1, #8
    ^
  <stdin>:2:16: note: operand must be an immediate in the range [0,7]
    adds r0, r1, #8
                 ^
  <stdin>:2:16: note: operand must be a register in range [r0, r7]
    adds r0, r1, #8
                 ^

I've changed the initial error test to be more explicit about the fact that the notes relate to the error, and that fixing any one of them will make the instruction valid, rather than having to fix all of them. I've removed the "for one encoding" text from the notes, as this is now redundant, and seemed to be causing confusion.

This is dependent on https://reviews.llvm.org/D27620, which is still in review.


Repository:
  rL LLVM

https://reviews.llvm.org/D31530

Files:
  lib/Target/ARM/ARM.td
  lib/Target/ARM/AsmParser/ARMAsmParser.cpp
  test/MC/ARM/arm-branch-errors.s
  test/MC/ARM/basic-arm-instructions-v8.1a.s
  test/MC/ARM/basic-arm-instructions-v8.s
  test/MC/ARM/basic-thumb2-instructions-v8.s
  test/MC/ARM/cps.s
  test/MC/ARM/diagnostics.s
  test/MC/ARM/directive-arch_extension-fp.s
  test/MC/ARM/directive-arch_extension-idiv.s
  test/MC/ARM/fp-const-errors.s
  test/MC/ARM/fullfp16-neg.s
  test/MC/ARM/fullfp16-neon-neg.s
  test/MC/ARM/invalid-fp-armv8.s
  test/MC/ARM/invalid-hint-thumb.s
  test/MC/ARM/invalid-idiv.s
  test/MC/ARM/invalid-neon-v8.s
  test/MC/ARM/invalid-special-reg.s
  test/MC/ARM/ldr-pseudo-unpredictable.s
  test/MC/ARM/ldrd-strd-gnu-arm-bad-imm.s
  test/MC/ARM/lsl-zero-errors.s
  test/MC/ARM/negative-immediates-fail.s
  test/MC/ARM/negative-immediates-thumb1-fail.s
  test/MC/ARM/negative-immediates-thumb1.s
  test/MC/ARM/negative-immediates.s
  test/MC/ARM/neon-vld-vst-align.s
  test/MC/ARM/not-armv4.s
  test/MC/ARM/single-precision-fp.s
  test/MC/ARM/t2-modified-immediate-fixup-error2.s
  test/MC/ARM/thumb-diagnostics.s
  test/MC/ARM/thumb-mov.s
  test/MC/ARM/thumb-not-mclass.s
  test/MC/ARM/thumb2-bxj-v8.s
  test/MC/ARM/thumb2-bxj.s
  test/MC/ARM/thumb2-diagnostics.s
  test/MC/ARM/thumb2-dsp-diag.s
  test/MC/ARM/thumbv7m.s
  test/MC/ARM/thumbv8m.s
  test/MC/ARM/udf-thumb-2-diagnostics.s
  test/MC/ARM/udf-thumb-diagnostics.s
  test/MC/ARM/vfp4.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D31530.110986.patch
Type: text/x-patch
Size: 526441 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170814/14b250e3/attachment-0001.bin>


More information about the llvm-commits mailing list