| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/WebAssembly/MCTargetDesc/ |
| H A D | WebAssemblyMCTargetDesc.h | 40 namespace WebAssembly { 140 namespace WebAssembly { 384 case WebAssembly::TEE_I32: in isTee() 406 case WebAssembly::CALL: in isCallDirect() 407 case WebAssembly::CALL_S: in isCallDirect() 442 case WebAssembly::BLOCK: in isMarker() 446 case WebAssembly::LOOP: in isMarker() 447 case WebAssembly::LOOP_S: in isMarker() 450 case WebAssembly::TRY: in isMarker() 451 case WebAssembly::TRY_S: in isMarker() [all …]
|
| H A D | WebAssemblyMCTypeUtilities.cpp | 41 WebAssembly::BlockType WebAssembly::parseBlockType(StringRef Type) { in parseBlockType() 44 .Case("i32", WebAssembly::BlockType::I32) in parseBlockType() 45 .Case("i64", WebAssembly::BlockType::I64) in parseBlockType() 91 S += WebAssembly::typeToString(Type); in typeListToString() 107 case WebAssembly::I32RegClassID: in regClassToValType() 109 case WebAssembly::I64RegClassID: in regClassToValType() 111 case WebAssembly::F32RegClassID: in regClassToValType() 113 case WebAssembly::F64RegClassID: in regClassToValType() 115 case WebAssembly::V128RegClassID: in regClassToValType() 117 case WebAssembly::FUNCREFRegClassID: in regClassToValType() [all …]
|
| H A D | WebAssemblyMCCodeEmitter.cpp | 104 case WebAssembly::OPERAND_I32IMM: in encodeInstruction() 110 case WebAssembly::OPERAND_I64IMM: in encodeInstruction() 130 case WebAssembly::OPERAND_GLOBAL: in encodeInstruction() 153 case WebAssembly::OPERAND_I32IMM: in encodeInstruction() 156 case WebAssembly::OPERAND_I64IMM: in encodeInstruction() 161 case WebAssembly::OPERAND_TABLE: in encodeInstruction() 162 case WebAssembly::OPERAND_OFFSET32: in encodeInstruction() 163 case WebAssembly::OPERAND_SIGNATURE: in encodeInstruction() 165 case WebAssembly::OPERAND_GLOBAL: in encodeInstruction() 166 case WebAssembly::OPERAND_TAG: in encodeInstruction() [all …]
|
| H A D | WebAssemblyInstPrinter.cpp | 121 case WebAssembly::LOOP: in printInst() 122 case WebAssembly::LOOP_S: in printInst() 127 case WebAssembly::BLOCK: in printInst() 128 case WebAssembly::BLOCK_S: in printInst() 132 case WebAssembly::TRY: in printInst() 133 case WebAssembly::TRY_S: in printInst() 158 case WebAssembly::END_TRY: in printInst() 169 case WebAssembly::CATCH: in printInst() 170 case WebAssembly::CATCH_S: in printInst() 186 if (Opc == WebAssembly::CATCH || Opc == WebAssembly::CATCH_S) { in printInst() [all …]
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/WebAssembly/ |
| H A D | WebAssemblyUtilities.cpp | 44 case WebAssembly::THROW: in mayThrow() 45 case WebAssembly::THROW_S: in mayThrow() 46 case WebAssembly::RETHROW: in mayThrow() 47 case WebAssembly::RETHROW_S: in mayThrow() 88 case WebAssembly::CALL: in getCalleeOp() 89 case WebAssembly::CALL_S: in getCalleeOp() 90 case WebAssembly::RET_CALL: in getCalleeOp() 91 case WebAssembly::RET_CALL_S: in getCalleeOp() 93 case WebAssembly::CALL_INDIRECT: in getCalleeOp() 165 return WebAssembly::COPY_I32; in getCopyOpcodeForRegClass() [all …]
|
| H A D | WebAssemblyExplicitLocals.cpp | 89 if (RC == &WebAssembly::I32RegClass) in getDropOpcode() 90 return WebAssembly::DROP_I32; in getDropOpcode() 91 if (RC == &WebAssembly::I64RegClass) in getDropOpcode() 92 return WebAssembly::DROP_I64; in getDropOpcode() 93 if (RC == &WebAssembly::F32RegClass) in getDropOpcode() 94 return WebAssembly::DROP_F32; in getDropOpcode() 95 if (RC == &WebAssembly::F64RegClass) in getDropOpcode() 96 return WebAssembly::DROP_F64; in getDropOpcode() 98 return WebAssembly::DROP_V128; in getDropOpcode() 100 return WebAssembly::DROP_FUNCREF; in getDropOpcode() [all …]
|
| H A D | WebAssemblyFastISel.cpp | 1034 Opc = I32 ? WebAssembly::EQ_I32 : WebAssembly::EQ_I64; in selectICmp() 1037 Opc = I32 ? WebAssembly::NE_I32 : WebAssembly::NE_I64; in selectICmp() 1103 Opc = F32 ? WebAssembly::EQ_F32 : WebAssembly::EQ_F64; in selectFCmp() 1106 Opc = F32 ? WebAssembly::NE_F32 : WebAssembly::NE_F64; in selectFCmp() 1109 Opc = F32 ? WebAssembly::GT_F32 : WebAssembly::GT_F64; in selectFCmp() 1112 Opc = F32 ? WebAssembly::GE_F32 : WebAssembly::GE_F64; in selectFCmp() 1115 Opc = F32 ? WebAssembly::LT_F32 : WebAssembly::LT_F64; in selectFCmp() 1118 Opc = F32 ? WebAssembly::LE_F32 : WebAssembly::LE_F64; in selectFCmp() 1121 Opc = F32 ? WebAssembly::LE_F32 : WebAssembly::LE_F64; in selectFCmp() 1125 Opc = F32 ? WebAssembly::LT_F32 : WebAssembly::LT_F64; in selectFCmp() [all …]
|
| H A D | WebAssemblyInstrInfo.cpp | 45 case WebAssembly::CONST_I32: in isReallyTriviallyReMaterializable() 46 case WebAssembly::CONST_I64: in isReallyTriviallyReMaterializable() 47 case WebAssembly::CONST_F32: in isReallyTriviallyReMaterializable() 48 case WebAssembly::CONST_F64: in isReallyTriviallyReMaterializable() 107 case WebAssembly::BR_IF: in analyzeBranch() 115 case WebAssembly::BR_UNLESS: in analyzeBranch() 123 case WebAssembly::BR: in analyzeBranch() 195 {WebAssembly::TI_LOCAL, "wasm-local"}, in getSerializableTargetIndices() 205 return WebAssembly::getCalleeOp(MI); in getCalleeOperand() 227 if (WebAssembly::isLocalSet(Opc) || WebAssembly::isLocalTee(Opc)) { in isExplicitTargetIndexDef() [all …]
|
| H A D | WebAssemblyRegStackify.cpp | 181 case WebAssembly::DIV_S_I32: in query() 182 case WebAssembly::DIV_S_I64: in query() 183 case WebAssembly::REM_S_I32: in query() 184 case WebAssembly::REM_S_I64: in query() 185 case WebAssembly::DIV_U_I32: in query() 186 case WebAssembly::DIV_U_I64: in query() 187 case WebAssembly::REM_U_I32: in query() 188 case WebAssembly::REM_U_I64: in query() 216 case WebAssembly::DIV_S_I32: in query() 217 case WebAssembly::DIV_S_I64: in query() [all …]
|
| H A D | WebAssemblyCFGStackify.cpp | 39 using WebAssembly::SortRegionInfo; 354 WebAssembly::BlockType ReturnType = WebAssembly::BlockType::Void; in placeBlockMarker() 1450 case WebAssembly::END_LOOP: in recalculateScopeTops() 1451 case WebAssembly::END_TRY: in recalculateScopeTops() 1452 case WebAssembly::DELEGATE: in recalculateScopeTops() 1455 case WebAssembly::CATCH: in recalculateScopeTops() 1658 case WebAssembly::BLOCK: in rewriteDepthImmediates() 1659 case WebAssembly::TRY: in rewriteDepthImmediates() 1666 case WebAssembly::LOOP: in rewriteDepthImmediates() 1688 case WebAssembly::CATCH: in rewriteDepthImmediates() [all …]
|
| H A D | WebAssemblyRegisterInfo.cpp | 47 for (auto Reg : {WebAssembly::SP32, WebAssembly::SP64, WebAssembly::FP32, in getReservedRegs() 48 WebAssembly::FP64}) in getReservedRegs() 73 unsigned AddrOperandNum = WebAssembly::getNamedOperandIdx( in eliminateFrameIndex() 74 MI.getOpcode(), WebAssembly::OpName::addr); in eliminateFrameIndex() 76 unsigned OffsetOperandNum = WebAssembly::getNamedOperandIdx( in eliminateFrameIndex() 77 MI.getOpcode(), WebAssembly::OpName::off); in eliminateFrameIndex() 147 /* !hasFP */ {WebAssembly::SP32, WebAssembly::SP64}, in getFrameRegister() 148 /* hasFP */ {WebAssembly::FP32, WebAssembly::FP64}}; in getFrameRegister() 158 return &WebAssembly::I64RegClass; in getPointerRegClass() 159 return &WebAssembly::I32RegClass; in getPointerRegClass()
|
| H A D | WebAssemblyFrameLowering.cpp | 183 ? WebAssembly::SP64 in getSPReg() 184 : WebAssembly::SP32; in getSPReg() 189 ? WebAssembly::FP64 in getFPReg() 190 : WebAssembly::FP32; in getFPReg() 196 ? WebAssembly::CONST_I64 in getOpcConst() 202 ? WebAssembly::ADD_I64 in getOpcAdd() 203 : WebAssembly::ADD_I32; in getOpcAdd() 208 ? WebAssembly::SUB_I64 in getOpcSub() 209 : WebAssembly::SUB_I32; in getOpcSub() 214 ? WebAssembly::AND_I64 in getOpcAnd() [all …]
|
| H A D | WebAssemblyAsmPrinter.cpp | 343 &F, WebAssembly::WasmEnableEmEH || WebAssembly::WasmEnableEmSjLj, in emitDecls() 649 case WebAssembly::ARGUMENT_i32: in emitInstruction() 650 case WebAssembly::ARGUMENT_i32_S: in emitInstruction() 651 case WebAssembly::ARGUMENT_i64: in emitInstruction() 652 case WebAssembly::ARGUMENT_i64_S: in emitInstruction() 653 case WebAssembly::ARGUMENT_f32: in emitInstruction() 654 case WebAssembly::ARGUMENT_f32_S: in emitInstruction() 655 case WebAssembly::ARGUMENT_f64: in emitInstruction() 656 case WebAssembly::ARGUMENT_f64_S: in emitInstruction() 657 case WebAssembly::ARGUMENT_v16i8: in emitInstruction() [all …]
|
| H A D | WebAssemblyReplacePhysRegs.cpp | 76 for (unsigned PReg = WebAssembly::NoRegister + 1; in runOnMachineFunction() 77 PReg < WebAssembly::NUM_TARGET_REGS; ++PReg) { in runOnMachineFunction() 79 if (PReg == WebAssembly::VALUE_STACK || PReg == WebAssembly::ARGUMENTS) in runOnMachineFunction() 84 unsigned VReg = WebAssembly::NoRegister; in runOnMachineFunction() 88 if (VReg == WebAssembly::NoRegister) { in runOnMachineFunction()
|
| H A D | WebAssemblyMCInstLower.cpp | 53 if (WebAssembly::isWasmVarAddressSpace(Global->getAddressSpace()) && in GetGlobalAddressSymbol() 62 WebAssembly::wasmSymbolSetType(WasmSym, GlobalVT, VTs); in GetGlobalAddressSymbol() 80 F, WebAssembly::WasmEnableEmEH || WebAssembly::WasmEnableEmSjLj, in GetGlobalAddressSymbol() 198 if (Info.OperandType == WebAssembly::OPERAND_TYPEINDEX) { in lower() 205 Returns.push_back(WebAssembly::regClassToValType( in lower() 209 Params.push_back(WebAssembly::regClassToValType( in lower() 214 if (WebAssembly::isCallIndirect(MI->getOpcode())) in lower() 219 if (MI->getOpcode() == WebAssembly::RET_CALL_INDIRECT) in lower() 226 assert(BT != WebAssembly::BlockType::Invalid); in lower() 227 if (BT == WebAssembly::BlockType::Multivalue) { in lower() [all …]
|
| H A D | README.txt | 1 //===-- README.txt - Notes for WebAssembly code gen -----------------------===// 3 The object format emitted by the WebAssembly backed is documented in: 5 * https://github.com/WebAssembly/tool-conventions/blob/main/Linking.md 9 * https://github.com/WebAssembly/tool-conventions/blob/main/BasicCABI.md 11 For more information on WebAssembly itself, see the home page: 20 on musl, for producing WebAssembly applications that use the WASI ABI. 33 encoding of WebAssembly itself: 34 * https://github.com/WebAssembly/design/blob/main/Semantics.md 50 WebAssembly. 87 being run after the WebAssembly PEI pass. [all …]
|
| H A D | WebAssemblyISelDAGToDAG.cpp | 104 assert(Tag == WebAssembly::CPP_EXCEPTION || WebAssembly::C_LONGJMP); in getTagSymNode() 108 const char *SymName = Tag == WebAssembly::CPP_EXCEPTION in getTagSymNode() 123 auto GlobalGetIns = PtrVT == MVT::i64 ? WebAssembly::GLOBAL_GET_I64 in Select() 124 : WebAssembly::GLOBAL_GET_I32; in Select() 141 Fence = CurDAG->getMachineNode(WebAssembly::COMPILER_FENCE, in Select() 151 WebAssembly::ATOMIC_FENCE, in Select() 207 CurDAG->getMachineNode(WebAssembly::CATCH, DL, in Select() 230 CurDAG->getMachineNode(WebAssembly::THROW, DL, in Select() 275 CurDAG->getMachineNode(WebAssembly::CALL_PARAMS, DL, MVT::Glue, Ops); in Select() 278 ? WebAssembly::CALL_RESULTS in Select() [all …]
|
| H A D | WebAssemblyLateEHPrepare.cpp | 158 if (TI->getOpcode() == WebAssembly::CATCHRET) in recordCatchRetBBs() 180 if (WebAssembly::isCatch(MI.getOpcode())) in hoistCatches() 215 !WebAssembly::isCatch(InsertPos->getOpcode())) { in addCatchAlls() 219 TII.get(WebAssembly::CATCH_ALL)); in addCatchAlls() 238 case WebAssembly::CATCHRET: { in replaceFuncletReturns() 242 BuildMI(MBB, TI, TI->getDebugLoc(), TII.get(WebAssembly::BR)) in replaceFuncletReturns() 248 case WebAssembly::CLEANUPRET: { in replaceFuncletReturns() 251 BuildMI(MBB, TI, TI->getDebugLoc(), TII.get(WebAssembly::RETHROW)) in replaceFuncletReturns() 268 if (MI.getOpcode() != WebAssembly::THROW && in removeUnnecessaryUnreachables() 269 MI.getOpcode() != WebAssembly::RETHROW) in removeUnnecessaryUnreachables() [all …]
|
| H A D | WebAssemblySetP2AlignOperands.cpp | 63 (UINT64_C(1) << WebAssembly::GetDefaultP2Align(MI.getOpcode())) && in rewriteP2Align() 66 WebAssembly::OPERAND_P2ALIGN && in rewriteP2Align() 72 uint64_t(WebAssembly::GetDefaultP2Align(MI.getOpcode()))); in rewriteP2Align() 87 int16_t P2AlignOpNum = WebAssembly::getNamedOperandIdx( in runOnMachineFunction() 88 MI.getOpcode(), WebAssembly::OpName::p2align); in runOnMachineFunction()
|
| H A D | WebAssemblyFixBrTableDefaults.cpp | 58 assert(MI.getDesc().getOpcode() == WebAssembly::BR_TABLE_I64 && in fixBrTableIndex() 63 if (ExtMI->getOpcode() == WebAssembly::I64_EXTEND_U_I32) { in fixBrTableIndex() 75 MF.getRegInfo().createVirtualRegister(&WebAssembly::I32RegClass); in fixBrTableIndex() 77 WST.getInstrInfo()->get(WebAssembly::I32_WRAP_I64), Reg32) in fixBrTableIndex() 84 MI.setDesc(WST.getInstrInfo()->get(WebAssembly::BR_TABLE_I32)); in fixBrTableIndex() 130 if (RangeCheck->getOpcode() != WebAssembly::GT_U_I32) in fixBrTableDefault() 170 if (WebAssembly::isBrTable(MI.getOpcode())) { in runOnMachineFunction()
|
| H A D | WebAssemblyISelLowering.cpp | 59 Subtarget->hasAddr64() ? WebAssembly::SP64 : WebAssembly::SP32); in WebAssemblyTargetLowering() 458 unsigned Abs = Float64 ? WebAssembly::ABS_F64 : WebAssembly::ABS_F32; in LowerFPToInt() 459 unsigned FConst = Float64 ? WebAssembly::CONST_F64 : WebAssembly::CONST_F32; in LowerFPToInt() 460 unsigned LT = Float64 ? WebAssembly::LT_F64 : WebAssembly::LT_F32; in LowerFPToInt() 461 unsigned GE = Float64 ? WebAssembly::GE_F64 : WebAssembly::GE_F32; in LowerFPToInt() 462 unsigned IConst = Int64 ? WebAssembly::CONST_I64 : WebAssembly::CONST_I32; in LowerFPToInt() 463 unsigned Eqz = WebAssembly::EQZ_I32; in LowerFPToInt() 570 CallOp = WebAssembly::RET_CALL; in LowerCallResults() 572 CallOp = WebAssembly::CALL; in LowerCallResults() 712 case WebAssembly::CALL_RESULTS: in EmitInstrWithCustomInserter() [all …]
|
| H A D | WebAssembly.td | 1 //- WebAssembly.td - Describe the WebAssembly Target Machine --*- tablegen -*-// 10 /// This is a target description file for the WebAssembly architecture, 22 // WebAssembly Subtarget features. 97 // WebAssembly Processors supported. 112 // Latest and greatest experimental version of WebAssembly. Bugs included! 135 def WebAssembly : Target {
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/WebAssembly/Disassembler/ |
| H A D | WebAssemblyDisassembler.cpp | 200 case WebAssembly::OPERAND_LOCAL: in getInstruction() 201 case WebAssembly::OPERAND_GLOBAL: in getInstruction() 203 case WebAssembly::OPERAND_TABLE: in getInstruction() 204 case WebAssembly::OPERAND_OFFSET32: in getInstruction() 205 case WebAssembly::OPERAND_OFFSET64: in getInstruction() 206 case WebAssembly::OPERAND_P2ALIGN: in getInstruction() 208 case WebAssembly::OPERAND_TAG: in getInstruction() 215 case WebAssembly::OPERAND_I32IMM: in getInstruction() 216 case WebAssembly::OPERAND_I64IMM: { in getInstruction() 247 case WebAssembly::OPERAND_F32IMM: { in getInstruction() [all …]
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/WebAssembly/Utils/ |
| H A D | WebAssemblyTypeUtilities.cpp | 23 MVT WebAssembly::parseMVT(StringRef Type) { in parseMVT() 39 wasm::ValType WebAssembly::toValType(MVT Type) { in toValType() 65 void WebAssembly::wasmSymbolSetType(MCSymbolWasm *Sym, const Type *GlobalVT, in wasmSymbolSetType() 74 if (WebAssembly::isWebAssemblyTableType(GlobalVT)) { in wasmSymbolSetType() 77 if (WebAssembly::isWebAssemblyExternrefType(ElTy)) in wasmSymbolSetType() 79 else if (WebAssembly::isWebAssemblyFuncrefType(ElTy)) in wasmSymbolSetType() 84 ValTy = WebAssembly::toValType(VTs[0]); in wasmSymbolSetType()
|
| /freebsd-14.2/contrib/llvm-project/clang/lib/Driver/ToolChains/ |
| H A D | WebAssembly.cpp | 31 std::string WebAssembly::getMultiarchTriple(const Driver &D, in getMultiarchTriple() 212 WebAssembly::WebAssembly(const Driver &D, const llvm::Triple &Triple, in WebAssembly() function in WebAssembly 241 const char *WebAssembly::getDefaultLinker() const { in getDefaultLinker() 253 bool WebAssembly::isPICDefault() const { return false; } in isPICDefault() 261 bool WebAssembly::hasBlocksRuntime() const { return false; } in hasBlocksRuntime() 264 bool WebAssembly::SupportsProfiling() const { return false; } in SupportsProfiling() 420 WebAssembly::GetCXXStdlibType(const ArgList &Args) const { in GetCXXStdlibType() 504 SanitizerMask WebAssembly::getSupportedSanitizers() const { in getSupportedSanitizers() 515 Tool *WebAssembly::buildLinker() const { in buildLinker() 519 void WebAssembly::addLibCxxIncludePaths( in addLibCxxIncludePaths() [all …]
|