diff options
| author | Derek Schuff <dschuff@google.com> | 2016-01-26 21:08:27 +0000 |
|---|---|---|
| committer | Derek Schuff <dschuff@google.com> | 2016-01-26 21:08:27 +0000 |
| commit | e7305cc4b3644e2e82684603f0b37a9ec1798e4c (patch) | |
| tree | ad1ccc19300fd47636ec90d059785e2440620b57 | |
| parent | 79685810f1f0586a77d7161533c289df07502dde (diff) | |
| download | bcm5719-llvm-e7305cc4b3644e2e82684603f0b37a9ec1798e4c.tar.gz bcm5719-llvm-e7305cc4b3644e2e82684603f0b37a9ec1798e4c.zip | |
[WebAssembly] Remove check for FrameIndex operands in WebAssemblyPeephole
This pass runs after FrameIndex elimination, so it should never see FI
operands. NFC
llvm-svn: 258860
| -rw-r--r-- | llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp index 40b809b949b..1a8afee8818 100644 --- a/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp +++ b/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp @@ -114,21 +114,16 @@ bool WebAssemblyPeephole::runOnMachineFunction(MachineFunction &MF) { LibFunc::Func Func; if (LibInfo.getLibFunc(Name, Func)) { const auto &Op2 = MI.getOperand(2); - if (Op2.isReg()) { - MachineOperand &MO = MI.getOperand(0); - unsigned OldReg = MO.getReg(); - unsigned NewReg = Op2.getReg(); - if (MRI.getRegClass(NewReg) != MRI.getRegClass(OldReg)) - report_fatal_error("Peephole: call to builtin function with " - "wrong signature, from/to mismatch"); - Changed |= MaybeRewriteToDiscard(OldReg, NewReg, MO, MFI, MRI); - } else if (Op2.isFI()) { - break; - } else { + if (!Op2.isReg()) report_fatal_error("Peephole: call to builtin function with " - "wrong signature, not consuming reg or " - "frame index"); - } + "wrong signature, not consuming reg"); + MachineOperand &MO = MI.getOperand(0); + unsigned OldReg = MO.getReg(); + unsigned NewReg = Op2.getReg(); + if (MRI.getRegClass(NewReg) != MRI.getRegClass(OldReg)) + report_fatal_error("Peephole: call to builtin function with " + "wrong signature, from/to mismatch"); + Changed |= MaybeRewriteToDiscard(OldReg, NewReg, MO, MFI, MRI); } } } |

