forked from OSchip/llvm-project
[lld][WebAssembly] Use a more meaningful name for stub functions
When we generate these stub functions on signature mismatches give them a more meaningful name so that when people see this in stack traces is gives a clue as the what is going on. See: https://github.com/emscripten-core/emscripten/issues/10226 Differential Revision: https://reviews.llvm.org/D72881
This commit is contained in:
parent
9050d0fb59
commit
51b521c07a
|
@ -22,7 +22,7 @@ entry:
|
||||||
; CHECK-NEXT: Name: name
|
; CHECK-NEXT: Name: name
|
||||||
; CHECK-NEXT: FunctionNames:
|
; CHECK-NEXT: FunctionNames:
|
||||||
; CHECK-NEXT: - Index: 0
|
; CHECK-NEXT: - Index: 0
|
||||||
; CHECK-NEXT: Name: 'unreachable:ret32'
|
; CHECK-NEXT: Name: 'signature_mismatch:ret32'
|
||||||
; CHECK-NEXT: - Index: 1
|
; CHECK-NEXT: - Index: 1
|
||||||
; CHECK-NEXT: Name: _start
|
; CHECK-NEXT: Name: _start
|
||||||
; CHECK-NEXT: - Index: 2
|
; CHECK-NEXT: - Index: 2
|
||||||
|
|
|
@ -40,7 +40,7 @@ declare i32 @ret32(i32, i64, i32) local_unnamed_addr
|
||||||
; YAML-NEXT: Name: name
|
; YAML-NEXT: Name: name
|
||||||
; YAML-NEXT: FunctionNames:
|
; YAML-NEXT: FunctionNames:
|
||||||
; YAML-NEXT: - Index: 0
|
; YAML-NEXT: - Index: 0
|
||||||
; YAML-NEXT: Name: 'unreachable:ret32'
|
; YAML-NEXT: Name: 'signature_mismatch:ret32'
|
||||||
; YAML-NEXT: - Index: 1
|
; YAML-NEXT: - Index: 1
|
||||||
; YAML-NEXT: Name: _start
|
; YAML-NEXT: Name: _start
|
||||||
; YAML-NEXT: - Index: 2
|
; YAML-NEXT: - Index: 2
|
||||||
|
|
|
@ -719,7 +719,7 @@ void SymbolTable::handleSymbolVariants() {
|
||||||
if (symbol != defined) {
|
if (symbol != defined) {
|
||||||
auto *f = cast<FunctionSymbol>(symbol);
|
auto *f = cast<FunctionSymbol>(symbol);
|
||||||
reportFunctionSignatureMismatch(symName, f, defined, false);
|
reportFunctionSignatureMismatch(symName, f, defined, false);
|
||||||
StringRef debugName = saver.save("unreachable:" + toString(*f));
|
StringRef debugName = saver.save("signature_mismatch:" + toString(*f));
|
||||||
replaceWithUnreachable(f, *f->signature, debugName);
|
replaceWithUnreachable(f, *f->signature, debugName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue