Skip to content

Commit 28d24e5

Browse files
rnkrazmser
authored andcommitted
[WebAssembly] Create separation between MC and CodeGen layers
Move WebAssemblyUtilities from Utils to the CodeGen library. It primarily deals in MIR layer types, so it really lives in the CodeGen library. Move a variety of other things around to try create better separation. See issue llvm#64166 for more info on layering. Move llvm/include/CodeGen/WasmAddressSpaces.h back to llvm/lib/Target/WebAssembly/Utils. Differential Revision: https://reviews.llvm.org/D156472
1 parent 12c8f6f commit 28d24e5

33 files changed

+59
-61
lines changed

llvm/lib/Target/WebAssembly/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ add_llvm_target(WebAssemblyCodeGen
5757
WebAssemblyTargetMachine.cpp
5858
WebAssemblyTargetObjectFile.cpp
5959
WebAssemblyTargetTransformInfo.cpp
60+
WebAssemblyUtilities.cpp
6061

6162
DEPENDS
6263
intrinsics_gen

llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
#include "llvm/MC/MCSymbol.h"
2626
#include "llvm/MC/MCSymbolWasm.h"
2727
#include "llvm/MC/TargetRegistry.h"
28+
#include "llvm/Support/Casting.h"
2829
#include "llvm/Support/Endian.h"
2930
#include "llvm/Support/LEB128.h"
3031

llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,16 @@
1515
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
1616
#include "MCTargetDesc/WebAssemblyMCTypeUtilities.h"
1717
#include "WebAssembly.h"
18-
#include "WebAssemblyMachineFunctionInfo.h"
18+
#include "llvm/ADT/APFloat.h"
1919
#include "llvm/ADT/SmallSet.h"
2020
#include "llvm/ADT/StringExtras.h"
21-
#include "llvm/CodeGen/TargetRegisterInfo.h"
2221
#include "llvm/MC/MCExpr.h"
2322
#include "llvm/MC/MCInst.h"
2423
#include "llvm/MC/MCInstrInfo.h"
2524
#include "llvm/MC/MCSubtargetInfo.h"
2625
#include "llvm/MC/MCSymbol.h"
26+
#include "llvm/MC/MCSymbolWasm.h"
27+
#include "llvm/Support/Casting.h"
2728
#include "llvm/Support/ErrorHandling.h"
2829
#include "llvm/Support/FormattedStream.h"
2930
using namespace llvm;
@@ -39,7 +40,7 @@ WebAssemblyInstPrinter::WebAssemblyInstPrinter(const MCAsmInfo &MAI,
3940

4041
void WebAssemblyInstPrinter::printRegName(raw_ostream &OS,
4142
MCRegister Reg) const {
42-
assert(Reg.id() != WebAssemblyFunctionInfo::UnusedReg);
43+
assert(Reg.id() != WebAssembly::UnusedReg);
4344
// Note that there's an implicit local.get/local.set here!
4445
OS << "$" << Reg.id();
4546
}
@@ -297,9 +298,9 @@ void WebAssemblyInstPrinter::printOperand(const MCInst *MI, unsigned OpNo,
297298
if (int(WAReg) >= 0)
298299
printRegName(O, WAReg);
299300
else if (OpNo >= Desc.getNumDefs() && !IsVariadicDef)
300-
O << "$pop" << WebAssemblyFunctionInfo::getWARegStackId(WAReg);
301-
else if (WAReg != WebAssemblyFunctionInfo::UnusedReg)
302-
O << "$push" << WebAssemblyFunctionInfo::getWARegStackId(WAReg);
301+
O << "$pop" << WebAssembly::getWARegStackId(WAReg);
302+
else if (WAReg != WebAssembly::UnusedReg)
303+
O << "$push" << WebAssembly::getWARegStackId(WAReg);
303304
else
304305
O << "$drop";
305306
// Add a '=' suffix if this is a def.

llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414
#ifndef LLVM_LIB_TARGET_WEBASSEMBLY_MCTARGETDESC_WEBASSEMBLYMCTARGETDESC_H
1515
#define LLVM_LIB_TARGET_WEBASSEMBLY_MCTARGETDESC_WEBASSEMBLYMCTARGETDESC_H
1616

17-
#include "../WebAssemblySubtarget.h"
1817
#include "llvm/BinaryFormat/Wasm.h"
1918
#include "llvm/MC/MCContext.h"
2019
#include "llvm/MC/MCInstrDesc.h"
20+
#include "llvm/Support/CommandLine.h"
2121
#include "llvm/Support/DataTypes.h"
2222
#include <memory>
2323

@@ -425,8 +425,8 @@ inline bool isCallIndirect(unsigned Opc) {
425425
}
426426
}
427427

428-
inline bool isBrTable(const MachineInstr &MI) {
429-
switch (MI.getOpcode()) {
428+
inline bool isBrTable(unsigned Opc) {
429+
switch (Opc) {
430430
case WebAssembly::BR_TABLE_I32:
431431
case WebAssembly::BR_TABLE_I32_S:
432432
case WebAssembly::BR_TABLE_I64:
@@ -535,7 +535,18 @@ inline bool isLocalTee(unsigned Opc) {
535535
}
536536
}
537537

538+
static const unsigned UnusedReg = -1u;
539+
540+
// For a given stackified WAReg, return the id number to print with push/pop.
541+
unsigned inline getWARegStackId(unsigned Reg) {
542+
assert(Reg & INT32_MIN);
543+
return Reg & INT32_MAX;
544+
}
545+
538546
} // end namespace WebAssembly
539547
} // end namespace llvm
540548

549+
#define GET_SUBTARGETINFO_ENUM
550+
#include "WebAssemblyGenSubtargetInfo.inc"
551+
541552
#endif

llvm/lib/Target/WebAssembly/Utils/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
add_llvm_component_library(LLVMWebAssemblyUtils
2-
WebAssemblyUtilities.cpp
32
WebAssemblyTypeUtilities.cpp
43

54
LINK_COMPONENTS

llvm/include/llvm/CodeGen/WasmAddressSpaces.h renamed to llvm/lib/Target/WebAssembly/Utils/WasmAddressSpaces.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
//
1111
//===----------------------------------------------------------------------===//
1212

13-
#ifndef LLVM_CODEGEN_WASM_ADDRESS_SPACES_H
14-
#define LLVM_CODEGEN_WASM_ADDRESS_SPACES_H
13+
#ifndef LLVM_LIB_TARGET_WEBASSEMBLY_UTILS_WASMADDRESSSPACES_H
14+
#define LLVM_LIB_TARGET_WEBASSEMBLY_UTILS_WASMADDRESSSPACES_H
1515

1616
namespace llvm {
1717

@@ -45,4 +45,4 @@ inline bool isValidAddressSpace(unsigned AS) {
4545

4646
} // namespace llvm
4747

48-
#endif // LLVM_CODEGEN_WASM_ADDRESS_SPACES_H
48+
#endif // LLVM_LIB_TARGET_WEBASSEMBLY_UTILS_WASMADDRESSSPACES_H

llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.cpp

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313

1414
#include "WebAssemblyTypeUtilities.h"
1515
#include "llvm/ADT/StringSwitch.h"
16-
#include "llvm/CodeGen/TargetRegisterInfo.h"
1716

1817
// Get register classes enum.
1918
#define GET_REGINFO_ENUM
@@ -63,11 +62,6 @@ wasm::ValType WebAssembly::toValType(MVT Type) {
6362
}
6463
}
6564

66-
wasm::ValType WebAssembly::regClassToValType(const TargetRegisterClass *RC) {
67-
assert(RC != nullptr);
68-
return regClassToValType(RC->getID());
69-
}
70-
7165
void WebAssembly::wasmSymbolSetType(MCSymbolWasm *Sym, const Type *GlobalVT,
7266
const ArrayRef<MVT> &VTs) {
7367
assert(!Sym->getType());

llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.h

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,14 @@
1616
#define LLVM_LIB_TARGET_WEBASSEMBLY_UTILS_WEBASSEMBLYTYPEUTILITIES_H
1717

1818
#include "MCTargetDesc/WebAssemblyMCTypeUtilities.h"
19+
#include "WasmAddressSpaces.h"
1920
#include "llvm/BinaryFormat/Wasm.h"
2021
#include "llvm/CodeGen/MachineValueType.h"
21-
#include "llvm/CodeGen/WasmAddressSpaces.h"
2222
#include "llvm/IR/DerivedTypes.h"
2323
#include "llvm/MC/MCSymbolWasm.h"
2424

2525
namespace llvm {
2626

27-
class TargetRegisterClass;
28-
2927
namespace WebAssembly {
3028

3129
/// Return true if this is a WebAssembly Externref Type.
@@ -52,9 +50,6 @@ MVT parseMVT(StringRef Type);
5250
// Convert a MVT into its corresponding wasm ValType.
5351
wasm::ValType toValType(MVT Type);
5452

55-
// Convert a register class to a wasm ValType.
56-
wasm::ValType regClassToValType(const TargetRegisterClass *RC);
57-
5853
/// Sets a Wasm Symbol Type.
5954
void wasmSymbolSetType(MCSymbolWasm *Sym, const Type *GlobalVT,
6055
const ArrayRef<MVT> &VTs);

llvm/lib/Target/WebAssembly/WebAssemblyArgumentMove.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,10 @@
2626
//===----------------------------------------------------------------------===//
2727

2828
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
29-
#include "Utils/WebAssemblyUtilities.h"
3029
#include "WebAssembly.h"
3130
#include "WebAssemblyMachineFunctionInfo.h"
3231
#include "WebAssemblySubtarget.h"
32+
#include "WebAssemblyUtilities.h"
3333
#include "llvm/CodeGen/MachineBlockFrequencyInfo.h"
3434
#include "llvm/CodeGen/MachineRegisterInfo.h"
3535
#include "llvm/CodeGen/Passes.h"

llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@
1818
#include "MCTargetDesc/WebAssemblyTargetStreamer.h"
1919
#include "TargetInfo/WebAssemblyTargetInfo.h"
2020
#include "Utils/WebAssemblyTypeUtilities.h"
21-
#include "Utils/WebAssemblyUtilities.h"
2221
#include "WebAssembly.h"
2322
#include "WebAssemblyMCInstLower.h"
2423
#include "WebAssemblyMachineFunctionInfo.h"
2524
#include "WebAssemblyRegisterInfo.h"
2625
#include "WebAssemblyRuntimeLibcallSignatures.h"
2726
#include "WebAssemblyTargetMachine.h"
27+
#include "WebAssemblyUtilities.h"
2828
#include "llvm/ADT/MapVector.h"
2929
#include "llvm/ADT/SmallSet.h"
3030
#include "llvm/ADT/StringExtras.h"
@@ -76,7 +76,7 @@ std::string WebAssemblyAsmPrinter::regToString(const MachineOperand &MO) {
7676
"Unlowered physical register encountered during assembly printing");
7777
assert(!MFI->isVRegStackified(RegNo));
7878
unsigned WAReg = MFI->getWAReg(RegNo);
79-
assert(WAReg != WebAssemblyFunctionInfo::UnusedReg);
79+
assert(WAReg != WebAssembly::UnusedReg);
8080
return '$' + utostr(WAReg);
8181
}
8282

llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@
1717
////===----------------------------------------------------------------------===//
1818

1919
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
20-
#include "Utils/WebAssemblyUtilities.h"
2120
#include "WebAssembly.h"
2221
#include "WebAssemblyExceptionInfo.h"
2322
#include "WebAssemblySortRegion.h"
2423
#include "WebAssemblySubtarget.h"
24+
#include "WebAssemblyUtilities.h"
2525
#include "llvm/ADT/PriorityQueue.h"
2626
#include "llvm/ADT/SetVector.h"
2727
#include "llvm/CodeGen/MachineDominators.h"

llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@
2222
//===----------------------------------------------------------------------===//
2323

2424
#include "Utils/WebAssemblyTypeUtilities.h"
25-
#include "Utils/WebAssemblyUtilities.h"
2625
#include "WebAssembly.h"
2726
#include "WebAssemblyExceptionInfo.h"
2827
#include "WebAssemblyMachineFunctionInfo.h"
2928
#include "WebAssemblySortRegion.h"
3029
#include "WebAssemblySubtarget.h"
30+
#include "WebAssemblyUtilities.h"
3131
#include "llvm/ADT/Statistic.h"
3232
#include "llvm/CodeGen/MachineDominators.h"
3333
#include "llvm/CodeGen/MachineInstrBuilder.h"

llvm/lib/Target/WebAssembly/WebAssemblyDebugFixup.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@
1515
//===----------------------------------------------------------------------===//
1616

1717
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
18-
#include "Utils/WebAssemblyUtilities.h"
1918
#include "WebAssembly.h"
2019
#include "WebAssemblyMachineFunctionInfo.h"
2120
#include "WebAssemblySubtarget.h"
21+
#include "WebAssemblyUtilities.h"
2222
#include "llvm/ADT/SCCIterator.h"
2323
#include "llvm/CodeGen/MachineFrameInfo.h"
2424
#include "llvm/CodeGen/MachineFunction.h"

llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
#include "WebAssemblyExceptionInfo.h"
1515
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
16-
#include "Utils/WebAssemblyUtilities.h"
16+
#include "WebAssemblyUtilities.h"
1717
#include "llvm/ADT/DepthFirstIterator.h"
1818
#include "llvm/ADT/PostOrderIterator.h"
1919
#include "llvm/CodeGen/MachineDominanceFrontier.h"

llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@
1616
//===----------------------------------------------------------------------===//
1717

1818
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
19-
#include "Utils/WebAssemblyUtilities.h"
2019
#include "WebAssembly.h"
2120
#include "WebAssemblyDebugValueManager.h"
2221
#include "WebAssemblyMachineFunctionInfo.h"
2322
#include "WebAssemblySubtarget.h"
23+
#include "WebAssemblyUtilities.h"
2424
#include "llvm/CodeGen/MachineBlockFrequencyInfo.h"
2525
#include "llvm/CodeGen/MachineInstrBuilder.h"
2626
#include "llvm/CodeGen/MachineRegisterInfo.h"

llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@
1717

1818
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
1919
#include "Utils/WebAssemblyTypeUtilities.h"
20-
#include "Utils/WebAssemblyUtilities.h"
2120
#include "WebAssembly.h"
2221
#include "WebAssemblyMachineFunctionInfo.h"
2322
#include "WebAssemblySubtarget.h"
2423
#include "WebAssemblyTargetMachine.h"
24+
#include "WebAssemblyUtilities.h"
2525
#include "llvm/Analysis/BranchProbabilityInfo.h"
2626
#include "llvm/CodeGen/FastISel.h"
2727
#include "llvm/CodeGen/FunctionLoweringInfo.h"

llvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
1818
#include "WebAssembly.h"
19+
#include "WebAssemblySubtarget.h"
1920
#include "llvm/CodeGen/MachineFunction.h"
2021
#include "llvm/CodeGen/MachineFunctionPass.h"
2122
#include "llvm/CodeGen/MachineRegisterInfo.h"
@@ -166,7 +167,7 @@ bool WebAssemblyFixBrTableDefaults::runOnMachineFunction(MachineFunction &MF) {
166167
MachineBasicBlock *MBB = *MBBSet.begin();
167168
MBBSet.erase(MBB);
168169
for (auto &MI : *MBB) {
169-
if (WebAssembly::isBrTable(MI)) {
170+
if (WebAssembly::isBrTable(MI.getOpcode())) {
170171
fixBrTableIndex(MI, MBB, MF);
171172
auto *Fixed = fixBrTableDefault(MI, MBB, MF);
172173
if (Fixed != nullptr) {

llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414
#include "WebAssemblyISelLowering.h"
1515
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
1616
#include "Utils/WebAssemblyTypeUtilities.h"
17-
#include "Utils/WebAssemblyUtilities.h"
1817
#include "WebAssemblyMachineFunctionInfo.h"
1918
#include "WebAssemblySubtarget.h"
2019
#include "WebAssemblyTargetMachine.h"
20+
#include "WebAssemblyUtilities.h"
2121
#include "llvm/CodeGen/CallingConvLower.h"
2222
#include "llvm/CodeGen/MachineFrameInfo.h"
2323
#include "llvm/CodeGen/MachineFunctionPass.h"

llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414

1515
#include "WebAssemblyInstrInfo.h"
1616
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
17-
#include "Utils/WebAssemblyUtilities.h"
1817
#include "WebAssembly.h"
1918
#include "WebAssemblyMachineFunctionInfo.h"
2019
#include "WebAssemblySubtarget.h"
20+
#include "WebAssemblyUtilities.h"
2121
#include "llvm/CodeGen/MachineFrameInfo.h"
2222
#include "llvm/CodeGen/MachineInstrBuilder.h"
2323
#include "llvm/CodeGen/MachineMemOperand.h"

llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@
1212
//===----------------------------------------------------------------------===//
1313

1414
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
15-
#include "Utils/WebAssemblyUtilities.h"
1615
#include "WebAssembly.h"
1716
#include "WebAssemblySubtarget.h"
17+
#include "WebAssemblyUtilities.h"
1818
#include "llvm/ADT/SmallPtrSet.h"
1919
#include "llvm/CodeGen/MachineFunctionPass.h"
2020
#include "llvm/CodeGen/MachineInstrBuilder.h"

llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@
1515
#include "WebAssemblyMCInstLower.h"
1616
#include "TargetInfo/WebAssemblyTargetInfo.h"
1717
#include "Utils/WebAssemblyTypeUtilities.h"
18-
#include "Utils/WebAssemblyUtilities.h"
1918
#include "WebAssemblyAsmPrinter.h"
2019
#include "WebAssemblyISelLowering.h"
2120
#include "WebAssemblyMachineFunctionInfo.h"
21+
#include "WebAssemblyUtilities.h"
2222
#include "llvm/CodeGen/AsmPrinter.h"
2323
#include "llvm/CodeGen/MachineFunction.h"
2424
#include "llvm/IR/Constants.h"
@@ -202,12 +202,12 @@ void WebAssemblyMCInstLower::lower(const MachineInstr *MI,
202202
const MachineRegisterInfo &MRI =
203203
MI->getParent()->getParent()->getRegInfo();
204204
for (const MachineOperand &MO : MI->defs())
205-
Returns.push_back(
206-
WebAssembly::regClassToValType(MRI.getRegClass(MO.getReg())));
205+
Returns.push_back(WebAssembly::regClassToValType(
206+
MRI.getRegClass(MO.getReg())->getID()));
207207
for (const MachineOperand &MO : MI->explicit_uses())
208208
if (MO.isReg())
209-
Params.push_back(
210-
WebAssembly::regClassToValType(MRI.getRegClass(MO.getReg())));
209+
Params.push_back(WebAssembly::regClassToValType(
210+
MRI.getRegClass(MO.getReg())->getID()));
211211

212212
// call_indirect instructions have a callee operand at the end which
213213
// doesn't count as a param.

llvm/lib/Target/WebAssembly/WebAssemblyMCLowerPrePass.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414
//===----------------------------------------------------------------------===//
1515

1616
#include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
17-
#include "Utils/WebAssemblyUtilities.h"
1817
#include "WebAssembly.h"
1918
#include "WebAssemblyMachineFunctionInfo.h"
2019
#include "WebAssemblySubtarget.h"
20+
#include "WebAssemblyUtilities.h"
2121
#include "llvm/ADT/SCCIterator.h"
2222
#include "llvm/CodeGen/MachineFrameInfo.h"
2323
#include "llvm/CodeGen/MachineFunction.h"

llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ MachineFunctionInfo *WebAssemblyFunctionInfo::clone(
3535

3636
void WebAssemblyFunctionInfo::initWARegs(MachineRegisterInfo &MRI) {
3737
assert(WARegs.empty());
38-
unsigned Reg = UnusedReg;
38+
unsigned Reg = WebAssembly::UnusedReg;
3939
WARegs.resize(MRI.getNumVirtRegs(), Reg);
4040
}
4141

0 commit comments

Comments
 (0)