/external/swiftshader/third_party/llvm-10.0/llvm/lib/Target/WebAssembly/MCTargetDesc/ |
D | WebAssemblyMCTargetDesc.h | 43 namespace WebAssembly { 123 namespace WebAssembly { 152 case WebAssembly::LOAD8_S_I32: in GetDefaultP2AlignAny() 153 case WebAssembly::LOAD8_S_I32_S: in GetDefaultP2AlignAny() 154 case WebAssembly::LOAD8_U_I32: in GetDefaultP2AlignAny() 155 case WebAssembly::LOAD8_U_I32_S: in GetDefaultP2AlignAny() 156 case WebAssembly::LOAD8_S_I64: in GetDefaultP2AlignAny() 157 case WebAssembly::LOAD8_S_I64_S: in GetDefaultP2AlignAny() 158 case WebAssembly::LOAD8_U_I64: in GetDefaultP2AlignAny() 159 case WebAssembly::LOAD8_U_I64_S: in GetDefaultP2AlignAny() [all …]
|
D | WebAssemblyMCCodeEmitter.cpp | 76 if (MI.getOpcode() == WebAssembly::BR_TABLE_I32_S || in encodeInstruction() 77 MI.getOpcode() == WebAssembly::BR_TABLE_I64_S) in encodeInstruction() 79 if (MI.getOpcode() == WebAssembly::BR_TABLE_I32 || in encodeInstruction() 80 MI.getOpcode() == WebAssembly::BR_TABLE_I64) in encodeInstruction() 95 case WebAssembly::OPERAND_I32IMM: in encodeInstruction() 98 case WebAssembly::OPERAND_OFFSET32: in encodeInstruction() 101 case WebAssembly::OPERAND_I64IMM: in encodeInstruction() 104 case WebAssembly::OPERAND_SIGNATURE: in encodeInstruction() 107 case WebAssembly::OPERAND_VEC_I8IMM: in encodeInstruction() 110 case WebAssembly::OPERAND_VEC_I16IMM: in encodeInstruction() [all …]
|
D | WebAssemblyInstPrinter.cpp | 63 if (I != 0 && ((MI->getOpcode() != WebAssembly::CALL_INDIRECT_VOID && in printInst() 64 MI->getOpcode() != WebAssembly::CALL_INDIRECT_VOID_S) || in printInst() 82 case WebAssembly::LOOP: in printInst() 83 case WebAssembly::LOOP_S: in printInst() 88 case WebAssembly::BLOCK: in printInst() 89 case WebAssembly::BLOCK_S: in printInst() 93 case WebAssembly::TRY: in printInst() 94 case WebAssembly::TRY_S: in printInst() 100 case WebAssembly::END_LOOP: in printInst() 101 case WebAssembly::END_LOOP_S: in printInst() [all …]
|
/external/llvm/lib/Target/WebAssembly/MCTargetDesc/ |
D | WebAssemblyMCTargetDesc.h | 43 namespace WebAssembly { 94 namespace WebAssembly { 99 case WebAssembly::LOAD8_S_I32: in GetDefaultP2Align() 100 case WebAssembly::LOAD8_U_I32: in GetDefaultP2Align() 101 case WebAssembly::LOAD8_S_I64: in GetDefaultP2Align() 102 case WebAssembly::LOAD8_U_I64: in GetDefaultP2Align() 103 case WebAssembly::STORE8_I32: in GetDefaultP2Align() 104 case WebAssembly::STORE8_I64: in GetDefaultP2Align() 106 case WebAssembly::LOAD16_S_I32: in GetDefaultP2Align() 107 case WebAssembly::LOAD16_U_I32: in GetDefaultP2Align() [all …]
|
/external/llvm/lib/Target/WebAssembly/ |
D | WebAssemblySetP2AlignOperands.cpp | 64 case WebAssembly::LOAD_I32: in runOnMachineFunction() 65 case WebAssembly::LOAD_I64: in runOnMachineFunction() 66 case WebAssembly::LOAD_F32: in runOnMachineFunction() 67 case WebAssembly::LOAD_F64: in runOnMachineFunction() 68 case WebAssembly::LOAD8_S_I32: in runOnMachineFunction() 69 case WebAssembly::LOAD8_U_I32: in runOnMachineFunction() 70 case WebAssembly::LOAD16_S_I32: in runOnMachineFunction() 71 case WebAssembly::LOAD16_U_I32: in runOnMachineFunction() 72 case WebAssembly::LOAD8_S_I64: in runOnMachineFunction() 73 case WebAssembly::LOAD8_U_I64: in runOnMachineFunction() [all …]
|
D | WebAssemblyFastISel.cpp | 329 &WebAssembly::I64RegClass : in materializeLoadStoreOperands() 330 &WebAssembly::I32RegClass); in materializeLoadStoreOperands() 332 WebAssembly::CONST_I64 : in materializeLoadStoreOperands() 333 WebAssembly::CONST_I32; in materializeLoadStoreOperands() 402 unsigned Imm = createResultReg(&WebAssembly::I32RegClass); in zeroExtendToI32() 404 TII.get(WebAssembly::CONST_I32), Imm) in zeroExtendToI32() 407 unsigned Result = createResultReg(&WebAssembly::I32RegClass); in zeroExtendToI32() 409 TII.get(WebAssembly::AND_I32), Result) in zeroExtendToI32() 429 unsigned Imm = createResultReg(&WebAssembly::I32RegClass); in signExtendToI32() 431 TII.get(WebAssembly::CONST_I32), Imm) in signExtendToI32() [all …]
|
D | WebAssemblyPeephole.cpp | 122 case WebAssembly::STORE8_I32: in runOnMachineFunction() 123 case WebAssembly::STORE16_I32: in runOnMachineFunction() 124 case WebAssembly::STORE8_I64: in runOnMachineFunction() 125 case WebAssembly::STORE16_I64: in runOnMachineFunction() 126 case WebAssembly::STORE32_I64: in runOnMachineFunction() 127 case WebAssembly::STORE_F32: in runOnMachineFunction() 128 case WebAssembly::STORE_F64: in runOnMachineFunction() 129 case WebAssembly::STORE_I32: in runOnMachineFunction() 130 case WebAssembly::STORE_I64: { in runOnMachineFunction() 137 MI.getOperand(WebAssembly::StoreValueOperandNo).getReg(); in runOnMachineFunction() [all …]
|
D | WebAssemblyRegStackify.cpp | 77 if (!MI->definesRegister(WebAssembly::EXPR_STACK)) in ImposeStackOrdering() 78 MI->addOperand(MachineOperand::CreateReg(WebAssembly::EXPR_STACK, in ImposeStackOrdering() 83 if (!MI->readsRegister(WebAssembly::EXPR_STACK)) in ImposeStackOrdering() 84 MI->addOperand(MachineOperand::CreateReg(WebAssembly::EXPR_STACK, in ImposeStackOrdering() 153 case WebAssembly::DIV_S_I32: case WebAssembly::DIV_S_I64: in Query() 154 case WebAssembly::REM_S_I32: case WebAssembly::REM_S_I64: in Query() 155 case WebAssembly::DIV_U_I32: case WebAssembly::DIV_U_I64: in Query() 156 case WebAssembly::REM_U_I32: case WebAssembly::REM_U_I64: in Query() 157 case WebAssembly::I32_TRUNC_S_F32: case WebAssembly::I64_TRUNC_S_F32: in Query() 158 case WebAssembly::I32_TRUNC_S_F64: case WebAssembly::I64_TRUNC_S_F64: in Query() [all …]
|
D | WebAssemblyInstrInfo.cpp | 32 : WebAssemblyGenInstrInfo(WebAssembly::ADJCALLSTACKDOWN, in WebAssemblyInstrInfo() 33 WebAssembly::ADJCALLSTACKUP), in WebAssemblyInstrInfo() 39 case WebAssembly::CONST_I32: in isReallyTriviallyReMaterializable() 40 case WebAssembly::CONST_I64: in isReallyTriviallyReMaterializable() 41 case WebAssembly::CONST_F32: in isReallyTriviallyReMaterializable() 42 case WebAssembly::CONST_F64: in isReallyTriviallyReMaterializable() 64 if (RC == &WebAssembly::I32RegClass) in copyPhysReg() 65 CopyLocalOpcode = WebAssembly::COPY_LOCAL_I32; in copyPhysReg() 66 else if (RC == &WebAssembly::I64RegClass) in copyPhysReg() 67 CopyLocalOpcode = WebAssembly::COPY_LOCAL_I64; in copyPhysReg() [all …]
|
D | WebAssemblyRegisterInfo.cpp | 48 for (auto Reg : {WebAssembly::SP32, WebAssembly::SP64, WebAssembly::FP32, in getReservedRegs() 49 WebAssembly::FP64}) in getReservedRegs() 69 if (MI.mayLoadOrStore() && FIOperandNum == WebAssembly::MemOpAddressOperandNo) { in eliminateFrameIndex() 76 .ChangeToRegister(WebAssembly::SP32, /*IsDef=*/false); in eliminateFrameIndex() 83 if (MI.getOpcode() == WebAssembly::ADD_I32) { in eliminateFrameIndex() 92 if (Def && Def->getOpcode() == WebAssembly::CONST_I32 && in eliminateFrameIndex() 97 .ChangeToRegister(WebAssembly::SP32, /*IsDef=*/false); in eliminateFrameIndex() 107 unsigned FIRegOperand = WebAssembly::SP32; in eliminateFrameIndex() 113 BuildMI(MBB, *II, II->getDebugLoc(), TII->get(WebAssembly::CONST_I32), in eliminateFrameIndex() 117 BuildMI(MBB, *II, II->getDebugLoc(), TII->get(WebAssembly::ADD_I32), in eliminateFrameIndex() [all …]
|
D | WebAssemblyFrameLowering.cpp | 94 BuildMI(MBB, InsertAddr, DL, TII->get(WebAssembly::CONST_I32), Zero) in writeSPToMemory() 99 BuildMI(MBB, InsertStore, DL, TII->get(WebAssembly::STORE_I32), Drop) in writeSPToMemory() 117 writeSPToMemory(WebAssembly::SP32, MF, MBB, I, I, DL); in eliminateCallFramePseudoInstr() 144 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::CONST_I32), Zero) in emitPrologue() 150 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::LOAD_I32), in emitPrologue() 151 StackSize ? SPReg : (unsigned)WebAssembly::SP32) in emitPrologue() 160 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::CONST_I32), OffsetReg) in emitPrologue() 162 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::SUB_I32), in emitPrologue() 163 WebAssembly::SP32) in emitPrologue() 171 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::COPY), in emitPrologue() [all …]
|
D | WebAssemblyStoreResults.cpp | 147 unsigned FromReg = MI.getOperand(WebAssembly::StoreValueOperandNo).getReg(); in optimizeStore() 205 case WebAssembly::STORE8_I32: in runOnMachineFunction() 206 case WebAssembly::STORE16_I32: in runOnMachineFunction() 207 case WebAssembly::STORE8_I64: in runOnMachineFunction() 208 case WebAssembly::STORE16_I64: in runOnMachineFunction() 209 case WebAssembly::STORE32_I64: in runOnMachineFunction() 210 case WebAssembly::STORE_F32: in runOnMachineFunction() 211 case WebAssembly::STORE_F64: in runOnMachineFunction() 212 case WebAssembly::STORE_I32: in runOnMachineFunction() 213 case WebAssembly::STORE_I64: in runOnMachineFunction() [all …]
|
D | WebAssembly.td | 1 //- WebAssembly.td - Describe the WebAssembly Target Machine --*- tablegen -*-// 11 /// \brief This is a target description file for the WebAssembly architecture, 23 // WebAssembly Subtarget features. 48 // WebAssembly Processors supported. 57 // Latest and greatest experimental version of WebAssembly. Bugs included! 64 def WebAssembly : Target {
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Target/WebAssembly/ |
D | WebAssemblyExplicitLocals.cpp | 84 if (RC == &WebAssembly::I32RegClass) in getDropOpcode() 85 return WebAssembly::DROP_I32; in getDropOpcode() 86 if (RC == &WebAssembly::I64RegClass) in getDropOpcode() 87 return WebAssembly::DROP_I64; in getDropOpcode() 88 if (RC == &WebAssembly::F32RegClass) in getDropOpcode() 89 return WebAssembly::DROP_F32; in getDropOpcode() 90 if (RC == &WebAssembly::F64RegClass) in getDropOpcode() 91 return WebAssembly::DROP_F64; in getDropOpcode() 92 if (RC == &WebAssembly::V128RegClass) in getDropOpcode() 93 return WebAssembly::DROP_V128; in getDropOpcode() [all …]
|
D | WebAssemblyFastISel.cpp | 384 Reg = createResultReg(Subtarget->hasAddr64() ? &WebAssembly::I64RegClass in materializeLoadStoreOperands() 385 : &WebAssembly::I32RegClass); in materializeLoadStoreOperands() 386 unsigned Opc = Subtarget->hasAddr64() ? WebAssembly::CONST_I64 in materializeLoadStoreOperands() 387 : WebAssembly::CONST_I32; in materializeLoadStoreOperands() 462 unsigned Imm = createResultReg(&WebAssembly::I32RegClass); in zeroExtendToI32() 464 TII.get(WebAssembly::CONST_I32), Imm) in zeroExtendToI32() 467 unsigned Result = createResultReg(&WebAssembly::I32RegClass); in zeroExtendToI32() 469 TII.get(WebAssembly::AND_I32), Result) in zeroExtendToI32() 492 unsigned Imm = createResultReg(&WebAssembly::I32RegClass); in signExtendToI32() 494 TII.get(WebAssembly::CONST_I32), Imm) in signExtendToI32() [all …]
|
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 …]
|
D | WebAssemblyRegStackify.cpp | 84 if (!MI->definesRegister(WebAssembly::VALUE_STACK)) in imposeStackOrdering() 85 MI->addOperand(MachineOperand::CreateReg(WebAssembly::VALUE_STACK, in imposeStackOrdering() 90 if (!MI->readsRegister(WebAssembly::VALUE_STACK)) in imposeStackOrdering() 91 MI->addOperand(MachineOperand::CreateReg(WebAssembly::VALUE_STACK, in imposeStackOrdering() 106 if (RegClass == &WebAssembly::I32RegClass) { in convertImplicitDefToConstZero() 107 MI->setDesc(TII->get(WebAssembly::CONST_I32)); in convertImplicitDefToConstZero() 109 } else if (RegClass == &WebAssembly::I64RegClass) { in convertImplicitDefToConstZero() 110 MI->setDesc(TII->get(WebAssembly::CONST_I64)); in convertImplicitDefToConstZero() 112 } else if (RegClass == &WebAssembly::F32RegClass) { in convertImplicitDefToConstZero() 113 MI->setDesc(TII->get(WebAssembly::CONST_F32)); in convertImplicitDefToConstZero() [all …]
|
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() 91 if (MI.getOpcode() == WebAssembly::ADD_I32) { in eliminateFrameIndex() 100 if (Def && Def->getOpcode() == WebAssembly::CONST_I32 && in eliminateFrameIndex() 121 BuildMI(MBB, *II, II->getDebugLoc(), TII->get(WebAssembly::CONST_I32), in eliminateFrameIndex() 125 BuildMI(MBB, *II, II->getDebugLoc(), TII->get(WebAssembly::ADD_I32), in eliminateFrameIndex() [all …]
|
D | WebAssemblyCFGStackify.cpp | 229 if (Pred->getFirstTerminator()->getOpcode() == WebAssembly::BR_ON_EXN) { in placeBlockMarker() 270 if (MI.getOpcode() == WebAssembly::LOOP) { in placeBlockMarker() 282 if (MI.getOpcode() == WebAssembly::BLOCK || in placeBlockMarker() 283 MI.getOpcode() == WebAssembly::TRY) in placeBlockMarker() 288 if (MI.getOpcode() == WebAssembly::END_BLOCK || in placeBlockMarker() 289 MI.getOpcode() == WebAssembly::END_LOOP || in placeBlockMarker() 290 MI.getOpcode() == WebAssembly::END_TRY) in placeBlockMarker() 304 if (WebAssembly::isChild(*std::prev(I), MFI)) in placeBlockMarker() 319 WebAssembly::BlockType ReturnType = WebAssembly::BlockType::Void; in placeBlockMarker() 324 ReturnType = WebAssembly::BlockType::I32; in placeBlockMarker() [all …]
|
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 …]
|
D | WebAssemblyFrameLowering.cpp | 132 BuildMI(MBB, InsertStore, DL, TII->get(WebAssembly::GLOBAL_SET_I32)) in writeSPToGlobal() 147 writeSPToGlobal(WebAssembly::SP32, MF, MBB, I, DL); in eliminateCallFramePseudoInstr() 168 WebAssembly::isArgument(InsertPt->getOpcode())) in emitPrologue() 174 unsigned SPReg = WebAssembly::SP32; in emitPrologue() 180 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::GLOBAL_GET_I32), SPReg) in emitPrologue() 188 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::COPY), BasePtr) in emitPrologue() 194 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::CONST_I32), OffsetReg) in emitPrologue() 196 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::SUB_I32), in emitPrologue() 197 WebAssembly::SP32) in emitPrologue() 206 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::CONST_I32), BitmaskReg) in emitPrologue() [all …]
|
D | WebAssemblyUtilities.cpp | 20 const char *const WebAssembly::ClangCallTerminateFn = "__clang_call_terminate"; 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() [all …]
|
D | WebAssemblyLateEHPrepare.cpp | 135 Register DstReg = MRI.createVirtualRegister(&WebAssembly::EXNREFRegClass); in addCatches() 137 TII.get(WebAssembly::CATCH), DstReg); in addCatches() 154 case WebAssembly::CATCHRET: { in replaceFuncletReturns() 158 BuildMI(MBB, TI, TI->getDebugLoc(), TII.get(WebAssembly::BR)) in replaceFuncletReturns() 164 case WebAssembly::CLEANUPRET: in replaceFuncletReturns() 165 case WebAssembly::RETHROW_IN_CATCH: { in replaceFuncletReturns() 173 BuildMI(MBB, TI, TI->getDebugLoc(), TII.get(WebAssembly::RETHROW)) in replaceFuncletReturns() 189 if (MI.getOpcode() != WebAssembly::THROW && in removeUnnecessaryUnreachables() 190 MI.getOpcode() != WebAssembly::RETHROW) in removeUnnecessaryUnreachables() 243 if (MI.getOpcode() == WebAssembly::EXTRACT_EXCEPTION_I32) { in addExceptionExtraction() [all …]
|
D | WebAssemblyAsmPrinter.cpp | 322 case WebAssembly::ARGUMENT_i32: in EmitInstruction() 323 case WebAssembly::ARGUMENT_i32_S: in EmitInstruction() 324 case WebAssembly::ARGUMENT_i64: in EmitInstruction() 325 case WebAssembly::ARGUMENT_i64_S: in EmitInstruction() 326 case WebAssembly::ARGUMENT_f32: in EmitInstruction() 327 case WebAssembly::ARGUMENT_f32_S: in EmitInstruction() 328 case WebAssembly::ARGUMENT_f64: in EmitInstruction() 329 case WebAssembly::ARGUMENT_f64_S: in EmitInstruction() 330 case WebAssembly::ARGUMENT_v16i8: in EmitInstruction() 331 case WebAssembly::ARGUMENT_v16i8_S: in EmitInstruction() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Target/WebAssembly/Disassembler/ |
D | WebAssemblyDisassembler.cpp | 149 outs() << WebAssembly::anyTypeToString(Type); in onSymbolStart() 196 case WebAssembly::OPERAND_BASIC_BLOCK: in getInstruction() 197 case WebAssembly::OPERAND_LOCAL: in getInstruction() 198 case WebAssembly::OPERAND_GLOBAL: in getInstruction() 199 case WebAssembly::OPERAND_FUNCTION32: in getInstruction() 200 case WebAssembly::OPERAND_OFFSET32: in getInstruction() 201 case WebAssembly::OPERAND_P2ALIGN: in getInstruction() 202 case WebAssembly::OPERAND_TYPEINDEX: in getInstruction() 203 case WebAssembly::OPERAND_EVENT: in getInstruction() 210 case WebAssembly::OPERAND_I32IMM: in getInstruction() [all …]
|