aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
diff options
context:
space:
mode:
authorDerek Schuff <dschuff@google.com>2016-08-02 23:31:56 +0000
committerDerek Schuff <dschuff@google.com>2016-08-02 23:31:56 +0000
commit5629ec141f727445b2a7c6a91cbcfb8eeeecd757 (patch)
tree32f50bd24c3de2c7c6c9d090ddd7cfebd2d47d05 /llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
parent057625f6166dbe4118697fda807289994afba914 (diff)
downloadllvm-5629ec141f727445b2a7c6a91cbcfb8eeeecd757.zip
llvm-5629ec141f727445b2a7c6a91cbcfb8eeeecd757.tar.gz
llvm-5629ec141f727445b2a7c6a91cbcfb8eeeecd757.tar.bz2
[WebAssembly] Remove unnecessary subtarget checks in peephole pass
Leftover from D22686; the passes can handle all the instructions unconditionally; only isel needs to care whether to generate them. llvm-svn: 277549
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp35
1 files changed, 13 insertions, 22 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
index 1c3c104..a6670b4 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
@@ -108,8 +108,7 @@ bool WebAssemblyPeephole::runOnMachineFunction(MachineFunction &MF) {
MachineRegisterInfo &MRI = MF.getRegInfo();
WebAssemblyFunctionInfo &MFI = *MF.getInfo<WebAssemblyFunctionInfo>();
- const auto &Subtarget = MF.getSubtarget<WebAssemblySubtarget>();
- const auto &TII = *Subtarget.getInstrInfo();
+ const auto &TII = *MF.getSubtarget<WebAssemblySubtarget>().getInstrInfo();
const WebAssemblyTargetLowering &TLI =
*MF.getSubtarget<WebAssemblySubtarget>().getTargetLowering();
auto &LibInfo = getAnalysis<TargetLibraryInfoWrapperPass>().getTLI();
@@ -188,32 +187,24 @@ bool WebAssemblyPeephole::runOnMachineFunction(MachineFunction &MF) {
WebAssembly::COPY_LOCAL_F64);
break;
case WebAssembly::RETURN_v16i8:
- Changed |=
- Subtarget.hasSIMD128() &&
- MaybeRewriteToFallthrough(MI, MBB, MF, MFI, MRI, TII,
- WebAssembly::FALLTHROUGH_RETURN_v16i8,
- WebAssembly::COPY_LOCAL_V128);
+ Changed |= MaybeRewriteToFallthrough(
+ MI, MBB, MF, MFI, MRI, TII, WebAssembly::FALLTHROUGH_RETURN_v16i8,
+ WebAssembly::COPY_LOCAL_V128);
break;
case WebAssembly::RETURN_v8i16:
- Changed |=
- Subtarget.hasSIMD128() &&
- MaybeRewriteToFallthrough(MI, MBB, MF, MFI, MRI, TII,
- WebAssembly::FALLTHROUGH_RETURN_v8i16,
- WebAssembly::COPY_LOCAL_V128);
+ Changed |= MaybeRewriteToFallthrough(
+ MI, MBB, MF, MFI, MRI, TII, WebAssembly::FALLTHROUGH_RETURN_v8i16,
+ WebAssembly::COPY_LOCAL_V128);
break;
case WebAssembly::RETURN_v4i32:
- Changed |=
- Subtarget.hasSIMD128() &&
- MaybeRewriteToFallthrough(MI, MBB, MF, MFI, MRI, TII,
- WebAssembly::FALLTHROUGH_RETURN_v4i32,
- WebAssembly::COPY_LOCAL_V128);
+ Changed |= MaybeRewriteToFallthrough(
+ MI, MBB, MF, MFI, MRI, TII, WebAssembly::FALLTHROUGH_RETURN_v4i32,
+ WebAssembly::COPY_LOCAL_V128);
break;
case WebAssembly::RETURN_v4f32:
- Changed |=
- Subtarget.hasSIMD128() &&
- MaybeRewriteToFallthrough(MI, MBB, MF, MFI, MRI, TII,
- WebAssembly::FALLTHROUGH_RETURN_v4f32,
- WebAssembly::COPY_LOCAL_V128);
+ Changed |= MaybeRewriteToFallthrough(
+ MI, MBB, MF, MFI, MRI, TII, WebAssembly::FALLTHROUGH_RETURN_v4f32,
+ WebAssembly::COPY_LOCAL_V128);
break;
case WebAssembly::RETURN_VOID:
if (!DisableWebAssemblyFallthroughReturnOpt &&