diff options
author | Dan Gohman <dan433584@gmail.com> | 2016-10-24 19:49:43 +0000 |
---|---|---|
committer | Dan Gohman <dan433584@gmail.com> | 2016-10-24 19:49:43 +0000 |
commit | 4fc4e42dea2547f40d3672ccf473fc2fbbdfc903 (patch) | |
tree | ebcc8d0e10c97409e41a89e296db5aca2f0ce7fc /llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp | |
parent | c3e0ce8f8527d340c168d7361c1c59d8df544ecb (diff) | |
download | bcm5719-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.cpp | 12 |
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); } |