aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp16
1 files changed, 2 insertions, 14 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
index 9f5d5bd..254cd04 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
@@ -235,20 +235,8 @@ static void Query(const MachineInstr &MI, AliasAnalysis &AA, bool &Read,
// Analyze calls.
if (MI.isCall()) {
- switch (MI.getOpcode()) {
- case WebAssembly::CALL_VOID:
- case WebAssembly::CALL_INDIRECT_VOID:
- QueryCallee(MI, 0, Read, Write, Effects, StackPointer);
- break;
- case WebAssembly::CALL_I32: case WebAssembly::CALL_I64:
- case WebAssembly::CALL_F32: case WebAssembly::CALL_F64:
- case WebAssembly::CALL_INDIRECT_I32: case WebAssembly::CALL_INDIRECT_I64:
- case WebAssembly::CALL_INDIRECT_F32: case WebAssembly::CALL_INDIRECT_F64:
- QueryCallee(MI, 1, Read, Write, Effects, StackPointer);
- break;
- default:
- llvm_unreachable("unexpected call opcode");
- }
+ unsigned CalleeOpNo = WebAssembly::getCalleeOpNo(MI);
+ QueryCallee(MI, CalleeOpNo, Read, Write, Effects, StackPointer);
}
}