summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
diff options
context:
space:
mode:
authorDan Gohman <dan433584@gmail.com>2016-10-24 19:49:43 +0000
committerDan Gohman <dan433584@gmail.com>2016-10-24 19:49:43 +0000
commit4fc4e42dea2547f40d3672ccf473fc2fbbdfc903 (patch)
treeebcc8d0e10c97409e41a89e296db5aca2f0ce7fc /llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
parentc3e0ce8f8527d340c168d7361c1c59d8df544ecb (diff)
downloadbcm5719-llvm-4fc4e42dea2547f40d3672ccf473fc2fbbdfc903.tar.gz
bcm5719-llvm-4fc4e42dea2547f40d3672ccf473fc2fbbdfc903.zip
[WebAssembly] Add an option to make get_local/set_local explicit.
This patch adds a pass, controlled by an option and off by default for now, for making implicit get_local/set_local explicit. This simplifies emitting wasm with MC. Differential Revision: https://reviews.llvm.org/D25836 llvm-svn: 285009
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
index 91f53630701..0e2d8bbaf64 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
@@ -60,19 +60,19 @@ void WebAssemblyInstrInfo::copyPhysReg(MachineBasicBlock &MBB,
? MRI.getRegClass(DestReg)
: MRI.getTargetRegisterInfo()->getMinimalPhysRegClass(DestReg);
- unsigned CopyLocalOpcode;
+ unsigned CopyOpcode;
if (RC == &WebAssembly::I32RegClass)
- CopyLocalOpcode = WebAssembly::COPY_LOCAL_I32;
+ CopyOpcode = WebAssembly::COPY_I32;
else if (RC == &WebAssembly::I64RegClass)
- CopyLocalOpcode = WebAssembly::COPY_LOCAL_I64;
+ CopyOpcode = WebAssembly::COPY_I64;
else if (RC == &WebAssembly::F32RegClass)
- CopyLocalOpcode = WebAssembly::COPY_LOCAL_F32;
+ CopyOpcode = WebAssembly::COPY_F32;
else if (RC == &WebAssembly::F64RegClass)
- CopyLocalOpcode = WebAssembly::COPY_LOCAL_F64;
+ CopyOpcode = WebAssembly::COPY_F64;
else
llvm_unreachable("Unexpected register class");
- BuildMI(MBB, I, DL, get(CopyLocalOpcode), DestReg)
+ BuildMI(MBB, I, DL, get(CopyOpcode), DestReg)
.addReg(SrcReg, KillSrc ? RegState::Kill : 0);
}
OpenPOWER on IntegriCloud