[WebAssembly] Fixed relocation errors having no location.

Summary:
Fixes: https://bugs.llvm.org/show_bug.cgi?id=42441

Used to print:

<unknown>:0: error: Cannot represent a difference across sections

(the location was null).

Now prints:

err.s:20:3: error: Cannot represent a difference across sections
  i32.const foo-bar
  ^

Note: I looked at adding a test for this, but I don't think it is
worth it. We're not testing error formatting in the Wasm backend :)

Reviewers: sbc100, jgravelle-google

Subscribers: dschuff, aheejin, sunfish, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D65602

llvm-svn: 367619
This commit is contained in:
Wouter van Oortmerssen 2019-08-01 21:34:54 +00:00
parent 84586c1423
commit 7fee93ed59
1 changed files with 1 additions and 0 deletions

View File

@ -763,6 +763,7 @@ public:
uint64_t &ErrorInfo, uint64_t &ErrorInfo,
bool MatchingInlineAsm) override { bool MatchingInlineAsm) override {
MCInst Inst; MCInst Inst;
Inst.setLoc(IDLoc);
unsigned MatchResult = unsigned MatchResult =
MatchInstructionImpl(Operands, Inst, ErrorInfo, MatchingInlineAsm); MatchInstructionImpl(Operands, Inst, ErrorInfo, MatchingInlineAsm);
switch (MatchResult) { switch (MatchResult) {