/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/WebAssembly/MCTargetDesc/ |
H A D | WebAssemblyMCTargetDesc.h | 39 namespace WebAssembly { 130 namespace WebAssembly { 140 case WebAssembly::NAME##_A32: \ in GetDefaultP2AlignAny() 141 case WebAssembly::NAME##_A64: \ in GetDefaultP2AlignAny() 142 case WebAssembly::NAME##_A32_S: \ in GetDefaultP2AlignAny() 143 case WebAssembly::NAME##_A64_S: in GetDefaultP2AlignAny() 276 case WebAssembly::ARGUMENT_i32: in isArgument() 277 case WebAssembly::ARGUMENT_i32_S: in isArgument() 278 case WebAssembly::ARGUMENT_i64: in isArgument() 279 case WebAssembly::ARGUMENT_i64_S: in isArgument() [all …]
|
H A D | WebAssemblyMCCodeEmitter.cpp | 80 if (MI.getOpcode() == WebAssembly::BR_TABLE_I32_S || in encodeInstruction() 81 MI.getOpcode() == WebAssembly::BR_TABLE_I64_S) in encodeInstruction() 83 if (MI.getOpcode() == WebAssembly::BR_TABLE_I32 || in encodeInstruction() 84 MI.getOpcode() == WebAssembly::BR_TABLE_I64) in encodeInstruction() 99 case WebAssembly::OPERAND_I32IMM: in encodeInstruction() 102 case WebAssembly::OPERAND_OFFSET32: in encodeInstruction() 105 case WebAssembly::OPERAND_I64IMM: in encodeInstruction() 108 case WebAssembly::OPERAND_SIGNATURE: in encodeInstruction() 109 case WebAssembly::OPERAND_HEAPTYPE: in encodeInstruction() 112 case WebAssembly::OPERAND_VEC_I8IMM: in encodeInstruction() [all …]
|
H A D | WebAssemblyInstPrinter.cpp | 53 case WebAssembly::CALL_INDIRECT_S: in printInst() 54 case WebAssembly::RET_CALL_INDIRECT_S: { in printInst() 97 if (MI->getOpcode() == WebAssembly::CALL_INDIRECT && in printInst() 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() 139 case WebAssembly::END_LOOP: in printInst() [all …]
|
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/WebAssembly/ |
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() 97 if (RC == &WebAssembly::V128RegClass) in getDropOpcode() 98 return WebAssembly::DROP_V128; in getDropOpcode() [all …]
|
H A D | WebAssemblyFastISel.cpp | 383 Reg = createResultReg(Subtarget->hasAddr64() ? &WebAssembly::I64RegClass in materializeLoadStoreOperands() 384 : &WebAssembly::I32RegClass); in materializeLoadStoreOperands() 385 unsigned Opc = Subtarget->hasAddr64() ? WebAssembly::CONST_I64 in materializeLoadStoreOperands() 386 : WebAssembly::CONST_I32; in materializeLoadStoreOperands() 461 unsigned Imm = createResultReg(&WebAssembly::I32RegClass); in zeroExtendToI32() 463 TII.get(WebAssembly::CONST_I32), Imm) in zeroExtendToI32() 466 unsigned Result = createResultReg(&WebAssembly::I32RegClass); in zeroExtendToI32() 468 TII.get(WebAssembly::AND_I32), Result) in zeroExtendToI32() 491 unsigned Imm = createResultReg(&WebAssembly::I32RegClass); in signExtendToI32() 493 TII.get(WebAssembly::CONST_I32), Imm) in signExtendToI32() [all …]
|
H A D | WebAssemblyInstrInfo.cpp | 36 : WebAssemblyGenInstrInfo(WebAssembly::ADJCALLSTACKDOWN, in WebAssemblyInstrInfo() 37 WebAssembly::ADJCALLSTACKUP, in WebAssemblyInstrInfo() 38 WebAssembly::CATCHRET), in WebAssemblyInstrInfo() 44 case WebAssembly::CONST_I32: in isReallyTriviallyReMaterializable() 45 case WebAssembly::CONST_I64: in isReallyTriviallyReMaterializable() 46 case WebAssembly::CONST_F32: in isReallyTriviallyReMaterializable() 47 case WebAssembly::CONST_F64: in isReallyTriviallyReMaterializable() 69 if (RC == &WebAssembly::I32RegClass) in copyPhysReg() 70 CopyOpcode = WebAssembly::COPY_I32; in copyPhysReg() 71 else if (RC == &WebAssembly::I64RegClass) in copyPhysReg() [all …]
|
H A D | WebAssemblyCFGStackify.cpp | 39 using WebAssembly::SortRegionInfo; 305 if (MI.getOpcode() == WebAssembly::LOOP) { in placeBlockMarker() 319 if (MI.getOpcode() == WebAssembly::BLOCK || in placeBlockMarker() 320 MI.getOpcode() == WebAssembly::TRY) { in placeBlockMarker() 331 if (MI.getOpcode() == WebAssembly::END_BLOCK || in placeBlockMarker() 332 MI.getOpcode() == WebAssembly::END_LOOP || in placeBlockMarker() 333 MI.getOpcode() == WebAssembly::END_TRY) in placeBlockMarker() 347 if (WebAssembly::isChild(*std::prev(I), MFI)) in placeBlockMarker() 354 WebAssembly::BlockType ReturnType = WebAssembly::BlockType::Void; in placeBlockMarker() 358 TII.get(WebAssembly::BLOCK)) in placeBlockMarker() [all …]
|
H A D | WebAssemblyRegStackify.cpp | 85 if (!MI->definesRegister(WebAssembly::VALUE_STACK)) in imposeStackOrdering() 86 MI->addOperand(MachineOperand::CreateReg(WebAssembly::VALUE_STACK, in imposeStackOrdering() 91 if (!MI->readsRegister(WebAssembly::VALUE_STACK)) in imposeStackOrdering() 92 MI->addOperand(MachineOperand::CreateReg(WebAssembly::VALUE_STACK, in imposeStackOrdering() 107 if (RegClass == &WebAssembly::I32RegClass) { in convertImplicitDefToConstZero() 108 MI->setDesc(TII->get(WebAssembly::CONST_I32)); in convertImplicitDefToConstZero() 110 } else if (RegClass == &WebAssembly::I64RegClass) { in convertImplicitDefToConstZero() 111 MI->setDesc(TII->get(WebAssembly::CONST_I64)); in convertImplicitDefToConstZero() 113 } else if (RegClass == &WebAssembly::F32RegClass) { in convertImplicitDefToConstZero() 114 MI->setDesc(TII->get(WebAssembly::CONST_F32)); in convertImplicitDefToConstZero() [all …]
|
H A D | WebAssemblyPeephole.cpp | 86 assert(End->getOpcode() == WebAssembly::END_FUNCTION); in maybeRewriteToFallthrough() 99 case WebAssembly::I32RegClassID: in maybeRewriteToFallthrough() 100 CopyLocalOpc = WebAssembly::COPY_I32; in maybeRewriteToFallthrough() 102 case WebAssembly::I64RegClassID: in maybeRewriteToFallthrough() 103 CopyLocalOpc = WebAssembly::COPY_I64; in maybeRewriteToFallthrough() 105 case WebAssembly::F32RegClassID: in maybeRewriteToFallthrough() 106 CopyLocalOpc = WebAssembly::COPY_F32; in maybeRewriteToFallthrough() 108 case WebAssembly::F64RegClassID: in maybeRewriteToFallthrough() 109 CopyLocalOpc = WebAssembly::COPY_F64; in maybeRewriteToFallthrough() 111 case WebAssembly::V128RegClassID: in maybeRewriteToFallthrough() [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() 146 /* !hasFP */ {WebAssembly::SP32, WebAssembly::SP64}, in getFrameRegister() 147 /* hasFP */ {WebAssembly::FP32, WebAssembly::FP64}}; in getFrameRegister() 157 return &WebAssembly::I64RegClass; in getPointerRegClass() 158 return &WebAssembly::I32RegClass; in getPointerRegClass()
|
H A D | WebAssemblyFrameLowering.cpp | 128 ? WebAssembly::SP64 in getSPReg() 129 : WebAssembly::SP32; in getSPReg() 134 ? WebAssembly::FP64 in getFPReg() 135 : WebAssembly::FP32; in getFPReg() 141 ? WebAssembly::CONST_I64 in getOpcConst() 142 : WebAssembly::CONST_I32; in getOpcConst() 147 ? WebAssembly::ADD_I64 in getOpcAdd() 148 : WebAssembly::ADD_I32; in getOpcAdd() 153 ? WebAssembly::SUB_I64 in getOpcSub() 154 : WebAssembly::SUB_I32; in getOpcSub() [all …]
|
H A D | WebAssemblyAsmPrinter.cpp | 162 WebAssembly::signatureToString(Sig); in getMCSymbolForFunction() 174 if (!WebAssembly::isWasmVarAddressSpace(GV->getAddressSpace())) { in emitGlobalVariable() 193 wasm::ValType Type = WebAssembly::toValType(VT); in emitGlobalVariable() 301 WebAssembly::getOrCreateFunctionTableSymbol(OutContext, Subtarget); in emitEndOfAsmFile() 307 !WebAssembly::isWasmVarAddressSpace(G.getAddressSpace()) && in emitEndOfAsmFile() 488 case WebAssembly::ARGUMENT_i32: in emitInstruction() 489 case WebAssembly::ARGUMENT_i32_S: in emitInstruction() 490 case WebAssembly::ARGUMENT_i64: in emitInstruction() 491 case WebAssembly::ARGUMENT_i64_S: in emitInstruction() 492 case WebAssembly::ARGUMENT_f32: in emitInstruction() [all …]
|
H A D | WebAssemblyMCInstLower.cpp | 55 if (WebAssembly::isWasmVarAddressSpace(Global->getAddressSpace()) && in GetGlobalAddressSymbol() 66 wasm::ValType Type = WebAssembly::toValType(VTs[0]); in GetGlobalAddressSymbol() 211 if (RC == &WebAssembly::I32RegClass) in getType() 213 if (RC == &WebAssembly::I64RegClass) in getType() 215 if (RC == &WebAssembly::F32RegClass) in getType() 217 if (RC == &WebAssembly::F64RegClass) in getType() 219 if (RC == &WebAssembly::V128RegClass) in getType() 265 if (Info.OperandType == WebAssembly::OPERAND_TYPEINDEX) { in lower() 279 if (WebAssembly::isCallIndirect(MI->getOpcode())) in lower() 284 if (MI->getOpcode() == WebAssembly::RET_CALL_INDIRECT) 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/master/Linking.md 9 * https://github.com/WebAssembly/tool-conventions/blob/master/BasicCABI.md 11 For more information on WebAssembly itself, see the home page: 16 includes standard libraries, tools, and packaging for producing WebAssembly 22 Rust provides WebAssembly support integrated into Cargo. There are two 33 encoding of WebAssembly itself: 34 * https://github.com/WebAssembly/design/blob/master/Semantics.md 35 * https://github.com/WebAssembly/design/blob/master/BinaryEncoding.md [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 …]
|
/netbsd-src/external/gpl3/binutils/dist/gas/doc/ |
H A D | c-wasm32.texi | 8 @node WebAssembly-Dependent 9 @chapter WebAssembly Dependent Features 14 @chapter WebAssembly Dependent Features 17 @cindex WebAssembly support 19 * WebAssembly-Notes:: Notes 20 * WebAssembly-Syntax:: Syntax 21 * WebAssembly-Floating-Point:: Floating Point 22 * WebAssembly-Opcodes:: Opcodes 23 * WebAssembly-module-layout:: Module Layout 26 @node WebAssembly-Notes [all …]
|
/netbsd-src/external/gpl3/binutils.old/dist/gas/doc/ |
H A D | c-wasm32.texi | 8 @node WebAssembly-Dependent 9 @chapter WebAssembly Dependent Features 14 @chapter WebAssembly Dependent Features 17 @cindex WebAssembly support 19 * WebAssembly-Notes:: Notes 20 * WebAssembly-Syntax:: Syntax 21 * WebAssembly-Floating-Point:: Floating Point 22 * WebAssembly-Opcodes:: Opcodes 23 * WebAssembly-module-layout:: Module Layout 26 @node WebAssembly-Notes [all …]
|
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/WebAssembly/Utils/ |
H A D | WebAssemblyUtilities.cpp | 21 const char *const WebAssembly::CxaBeginCatchFn = "__cxa_begin_catch"; 22 const char *const WebAssembly::CxaRethrowFn = "__cxa_rethrow"; 23 const char *const WebAssembly::StdTerminateFn = "_ZSt9terminatev"; 24 const char *const WebAssembly::PersonalityWrapperFn = 28 bool WebAssembly::isChild(const MachineInstr &MI, in isChild() 39 bool WebAssembly::mayThrow(const MachineInstr &MI) { in mayThrow() 41 case WebAssembly::THROW: in mayThrow() 42 case WebAssembly::THROW_S: in mayThrow() 43 case WebAssembly::RETHROW: in mayThrow() 44 case WebAssembly::RETHROW_S: in mayThrow() [all …]
|
H A D | WebAssemblyTypeUtilities.cpp | 19 Optional<wasm::ValType> WebAssembly::parseType(StringRef Type) { in parseType() 40 WebAssembly::HeapType WebAssembly::parseHeapType(StringRef Type) { in parseHeapType() 41 return StringSwitch<WebAssembly::HeapType>(Type) in parseHeapType() 42 .Case("extern", WebAssembly::HeapType::Externref) in parseHeapType() 43 .Case("func", WebAssembly::HeapType::Funcref) in parseHeapType() 44 .Default(WebAssembly::HeapType::Invalid); in parseHeapType() 47 WebAssembly::BlockType WebAssembly::parseBlockType(StringRef Type) { in parseBlockType() 49 return StringSwitch<WebAssembly::BlockType>(Type) in parseBlockType() 50 .Case("i32", WebAssembly::BlockType::I32) in parseBlockType() 51 .Case("i64", WebAssembly::BlockType::I64) in parseBlockType() [all …]
|
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/WebAssembly/Disassembler/ |
H A D | WebAssemblyDisassembler.cpp | 150 outs() << WebAssembly::anyTypeToString(Type); in onSymbolStart() 197 case WebAssembly::OPERAND_BASIC_BLOCK: in getInstruction() 198 case WebAssembly::OPERAND_LOCAL: in getInstruction() 199 case WebAssembly::OPERAND_GLOBAL: in getInstruction() 200 case WebAssembly::OPERAND_FUNCTION32: in getInstruction() 201 case WebAssembly::OPERAND_TABLE: in getInstruction() 202 case WebAssembly::OPERAND_OFFSET32: in getInstruction() 203 case WebAssembly::OPERAND_OFFSET64: in getInstruction() 204 case WebAssembly::OPERAND_P2ALIGN: in getInstruction() 205 case WebAssembly::OPERAND_TYPEINDEX: in getInstruction() [all …]
|
/netbsd-src/external/gpl3/binutils.old/dist/bfd/doc/ |
H A D | webassembly.texi | 1 @section WebAssembly backend 2 The WebAssembly module file format, at present, is a very simple 9 files can be used to produce WebAssembly modules. The WebAssembly 10 backend aims to enable the opposite: reading a WebAssembly module and 14 When writing WebAssembly modules, the WebAssembly backend attempts to 19 Function names are supported as symbols; local names and WebAssembly 23 between the WebAssembly specification and the BFD code; these result 24 in some malformed WebAssembly modules being treated as valid. 30 @node File layout, WebAssembly 32 For a description of the WebAssembly file format, see [all …]
|
/netbsd-src/external/gpl3/gdb/dist/bfd/doc/ |
H A D | webassembly.texi | 1 @section WebAssembly backend 2 The WebAssembly module file format, at present, is a very simple 9 files can be used to produce WebAssembly modules. The WebAssembly 10 backend aims to enable the opposite: reading a WebAssembly module and 14 When writing WebAssembly modules, the WebAssembly backend attempts to 19 Function names are supported as symbols; local names and WebAssembly 23 between the WebAssembly specification and the BFD code; these result 24 in some malformed WebAssembly modules being treated as valid. 30 @node File layout, WebAssembly 32 For a description of the WebAssembly file format, see [all …]
|
/netbsd-src/external/gpl3/binutils/dist/bfd/doc/ |
H A D | webassembly.texi | 1 @section WebAssembly backend 2 The WebAssembly module file format, at present, is a very simple 9 files can be used to produce WebAssembly modules. The WebAssembly 10 backend aims to enable the opposite: reading a WebAssembly module and 14 When writing WebAssembly modules, the WebAssembly backend attempts to 19 Function names are supported as symbols; local names and WebAssembly 23 between the WebAssembly specification and the BFD code; these result 24 in some malformed WebAssembly modules being treated as valid. 30 @node File layout, WebAssembly 32 For a description of the WebAssembly file format, see [all …]
|
/netbsd-src/external/gpl3/gdb.old/dist/bfd/doc/ |
H A D | webassembly.texi | 1 @section WebAssembly backend 2 The WebAssembly module file format, at present, is a very simple 9 files can be used to produce WebAssembly modules. The WebAssembly 10 backend aims to enable the opposite: reading a WebAssembly module and 14 When writing WebAssembly modules, the WebAssembly backend attempts to 19 Function names are supported as symbols; local names and WebAssembly 23 between the WebAssembly specification and the BFD code; these result 24 in some malformed WebAssembly modules being treated as valid. 30 @node File layout, WebAssembly 32 For a description of the WebAssembly file format, see [all …]
|
/netbsd-src/external/apache2/llvm/dist/clang/lib/Driver/ToolChains/ |
H A D | WebAssembly.cpp | 29 std::string WebAssembly::getMultiarchTriple(const Driver &D, in getMultiarchTriple() 167 WebAssembly::WebAssembly(const Driver &D, const llvm::Triple &Triple, in WebAssembly() function in WebAssembly 196 bool WebAssembly::IsMathErrnoDefault() const { return false; } in IsMathErrnoDefault() 198 bool WebAssembly::IsObjCNonFragileABIDefault() const { return true; } in IsObjCNonFragileABIDefault() 200 bool WebAssembly::UseObjCMixedDispatch() const { return true; } in UseObjCMixedDispatch() 202 bool WebAssembly::isPICDefault() const { return false; } in isPICDefault() 204 bool WebAssembly::isPIEDefault() const { return false; } in isPIEDefault() 206 bool WebAssembly::isPICDefaultForced() const { return false; } in isPICDefaultForced() 208 bool WebAssembly::IsIntegratedAssemblerDefault() const { return true; } in IsIntegratedAssemblerDefault() 210 bool WebAssembly::hasBlocksRuntime() const { return false; } in hasBlocksRuntime() [all …]
|