summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp
index b3da7861f29..1e9a773ae62 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp
@@ -115,9 +115,11 @@ static bool ReplaceDominatedUses(MachineBasicBlock &MBB, MachineInstr &MI,
O.setReg(ToReg);
// If the store's def was previously dead, it is no longer.
- MI.getOperand(0).setIsDead(false);
+ if (!O.isUndef()) {
+ MI.getOperand(0).setIsDead(false);
- Indices.push_back(WhereIdx.getRegSlot());
+ Indices.push_back(WhereIdx.getRegSlot());
+ }
}
if (Changed) {
OpenPOWER on IntegriCloud