/external/llvm/lib/Target/WebAssembly/MCTargetDesc/ |
WebAssemblyMCTargetDesc.h | 1 //==- WebAssemblyMCTargetDesc.h - WebAssembly Target Descriptions -*- C++ -*-=// 11 /// \brief This file provides WebAssembly-specific target descriptions. 43 namespace WebAssembly { 55 /// WebAssembly-specific directive identifiers. 64 } // end namespace WebAssembly 79 // Defines symbolic names for WebAssembly registers. This defines a mapping from 85 // Defines symbolic names for the WebAssembly instructions. 94 namespace WebAssembly { 99 case WebAssembly::LOAD8_S_I32: 100 case WebAssembly::LOAD8_U_I32 [all...] |
WebAssemblyTargetStreamer.cpp | 1 //==-- WebAssemblyTargetStreamer.cpp - WebAssembly Target Streamer Methods --=// 11 /// \brief This file defines WebAssembly-specific target streamer classes. 45 OS << WebAssembly::TypeToString(Type); 72 OS << ", " << WebAssembly::TypeToString(Ty); 86 Streamer.EmitIntValue(WebAssembly::DotParam, sizeof(uint64_t)); 91 Streamer.EmitIntValue(WebAssembly::DotResult, sizeof(uint64_t)); 96 Streamer.EmitIntValue(WebAssembly::DotLocal, sizeof(uint64_t)); 101 Streamer.EmitIntValue(WebAssembly::DotEndFunc, sizeof(uint64_t));
|
/external/llvm/lib/Target/WebAssembly/ |
WebAssemblySetP2AlignOperands.cpp | 15 #include "WebAssembly.h" 34 return "WebAssembly Set p2align Operands"; 64 case WebAssembly::LOAD_I32: 65 case WebAssembly::LOAD_I64: 66 case WebAssembly::LOAD_F32: 67 case WebAssembly::LOAD_F64: 68 case WebAssembly::LOAD8_S_I32: 69 case WebAssembly::LOAD8_U_I32: 70 case WebAssembly::LOAD16_S_I32: 71 case WebAssembly::LOAD16_U_I32 [all...] |
WebAssemblyInstrInfo.cpp | 1 //===-- WebAssemblyInstrInfo.cpp - WebAssembly Instruction Information ----===// 11 /// \brief This file contains the WebAssembly implementation of the 32 : WebAssemblyGenInstrInfo(WebAssembly::ADJCALLSTACKDOWN, 33 WebAssembly::ADJCALLSTACKUP), 39 case WebAssembly::CONST_I32: 40 case WebAssembly::CONST_I64: 41 case WebAssembly::CONST_F32: 42 case WebAssembly::CONST_F64: 64 if (RC == &WebAssembly::I32RegClass) 65 CopyLocalOpcode = WebAssembly::COPY_LOCAL_I32 [all...] |
WebAssemblyRegisterInfo.cpp | 1 //===-- WebAssemblyRegisterInfo.cpp - WebAssembly Register Information ----===// 11 /// \brief This file contains the WebAssembly implementation of the 48 for (auto Reg : {WebAssembly::SP32, WebAssembly::SP64, WebAssembly::FP32, 49 WebAssembly::FP64}) 69 if (MI.mayLoadOrStore() && FIOperandNum == WebAssembly::MemOpAddressOperandNo) { 76 .ChangeToRegister(WebAssembly::SP32, /*IsDef=*/false); 83 if (MI.getOpcode() == WebAssembly::ADD_I32) { 92 if (Def && Def->getOpcode() == WebAssembly::CONST_I32 & [all...] |
WebAssemblyFastISel.cpp | 1 //===-- WebAssemblyFastISel.cpp - WebAssembly FastISel implementation -----===// 11 /// \brief This file defines the WebAssembly-specific support for the FastISel 19 #include "WebAssembly.h" 329 &WebAssembly::I64RegClass : 330 &WebAssembly::I32RegClass); 332 WebAssembly::CONST_I64 : 333 WebAssembly::CONST_I32; 402 unsigned Imm = createResultReg(&WebAssembly::I32RegClass); 404 TII.get(WebAssembly::CONST_I32), Imm) 407 unsigned Result = createResultReg(&WebAssembly::I32RegClass) [all...] |
WebAssemblyPeephole.cpp | 1 //===-- WebAssemblyPeephole.cpp - WebAssembly Peephole Optimiztions -------===// 11 /// \brief Late peephole optimizations for WebAssembly. 16 #include "WebAssembly.h" 29 cl::desc("WebAssembly: Disable fallthrough-return optimizations."), 35 return "WebAssembly late peephole optimizer"; 122 case WebAssembly::STORE8_I32: 123 case WebAssembly::STORE16_I32: 124 case WebAssembly::STORE8_I64: 125 case WebAssembly::STORE16_I64: 126 case WebAssembly::STORE32_I64 [all...] |
WebAssemblyReplacePhysRegs.cpp | 15 /// WebAssembly doesn't actually have such physical registers. This pass is run 22 #include "WebAssembly.h" 43 return "WebAssembly Replace Physical Registers"; 76 for (unsigned PReg = WebAssembly::NoRegister + 1; 77 PReg < WebAssembly::NUM_TARGET_REGS; ++PReg) { 79 if (PReg == WebAssembly::EXPR_STACK || PReg == WebAssembly::ARGUMENTS) 84 unsigned VReg = WebAssembly::NoRegister; 88 if (VReg == WebAssembly::NoRegister)
|
WebAssemblyFrameLowering.cpp | 1 //===-- WebAssemblyFrameLowering.cpp - WebAssembly Frame Lowering ----------==// 11 /// \brief This file contains the WebAssembly implementation of 14 /// On WebAssembly, there aren't a lot of things to do here. There are no 94 BuildMI(MBB, InsertAddr, DL, TII->get(WebAssembly::CONST_I32), Zero) 99 BuildMI(MBB, InsertStore, DL, TII->get(WebAssembly::STORE_I32), Drop) 117 writeSPToMemory(WebAssembly::SP32, MF, MBB, I, I, DL); 127 "WebAssembly should not have callee-saved registers"); 144 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::CONST_I32), Zero) 150 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::LOAD_I32), 151 StackSize ? SPReg : (unsigned)WebAssembly::SP32 [all...] |
WebAssemblyArgumentMove.cpp | 29 #include "WebAssembly.h" 48 return "WebAssembly Argument Move"; 70 case WebAssembly::ARGUMENT_I32: 71 case WebAssembly::ARGUMENT_I64: 72 case WebAssembly::ARGUMENT_F32: 73 case WebAssembly::ARGUMENT_F64:
|
WebAssemblyRegStackify.cpp | 23 #include "WebAssembly.h" 24 #include "MCTargetDesc/WebAssemblyMCTargetDesc.h" // for WebAssembly::ARGUMENT_* 43 return "WebAssembly Register Stackify"; 77 if (!MI->definesRegister(WebAssembly::EXPR_STACK)) 78 MI->addOperand(MachineOperand::CreateReg(WebAssembly::EXPR_STACK, 83 if (!MI->readsRegister(WebAssembly::EXPR_STACK)) 84 MI->addOperand(MachineOperand::CreateReg(WebAssembly::EXPR_STACK, 153 case WebAssembly::DIV_S_I32: case WebAssembly::DIV_S_I64: 154 case WebAssembly::REM_S_I32: case WebAssembly::REM_S_I64 [all...] |
WebAssemblyPrepareForLiveIntervals.cpp | 15 /// WebAssembly runs LiveIntervals in a late pass. This pass transforms code 22 #include "WebAssembly.h" 44 return "WebAssembly Prepare For LiveIntervals"; 64 case WebAssembly::ARGUMENT_I32: 65 case WebAssembly::ARGUMENT_I64: 66 case WebAssembly::ARGUMENT_F32: 67 case WebAssembly::ARGUMENT_F64: 118 TII.get(WebAssembly::IMPLICIT_DEF), Reg);
|
WebAssemblyRegNumbering.cpp | 11 /// \brief This file implements a pass which assigns WebAssembly register 16 #include "WebAssembly.h" 36 return "WebAssembly Register Numbering"; 67 // WebAssembly argument registers are in the same index space as local 72 case WebAssembly::ARGUMENT_I32: 73 case WebAssembly::ARGUMENT_I64: 74 case WebAssembly::ARGUMENT_F32: 75 case WebAssembly::ARGUMENT_F64: { 87 // Then assign regular WebAssembly registers for all remaining used
|
WebAssemblyStoreResults.cpp | 13 /// WebAssembly's store instructions return the stored value. This is to enable 27 #include "WebAssembly.h" 50 return "WebAssembly Store Results"; 147 unsigned FromReg = MI.getOperand(WebAssembly::StoreValueOperandNo).getReg(); 205 case WebAssembly::STORE8_I32: 206 case WebAssembly::STORE16_I32: 207 case WebAssembly::STORE8_I64: 208 case WebAssembly::STORE16_I64: 209 case WebAssembly::STORE32_I64: 210 case WebAssembly::STORE_F32 [all...] |
WebAssemblyCFGStackify.cpp | 19 /// scope boundaries serve as the labels for WebAssembly's control transfers. 22 /// WebAssembly, provided that all loops are single-entry. 26 #include "WebAssembly.h" 47 return "WebAssembly CFG Stackify"; 366 while (InsertPos->getOpcode() != WebAssembly::LOOP) 373 prev(InsertPos)->getOpcode() != WebAssembly::LOOP && 374 prev(InsertPos)->getOpcode() != WebAssembly::END_BLOCK && 375 prev(InsertPos)->getOpcode() != WebAssembly::END_LOOP) 380 BuildMI(*Header, InsertPos, DebugLoc(), TII.get(WebAssembly::BLOCK)); 385 InsertPos->getOpcode() == WebAssembly::END_LOOP [all...] |
/external/clang/include/clang/Basic/ |
TargetCXXABI.h | 93 /// The WebAssembly ABI is a modified version of the Itanium ABI. 104 /// TODO: At present the WebAssembly ABI is not considered stable, so none 106 WebAssembly, 145 case WebAssembly: 164 case WebAssembly: 184 case WebAssembly: 185 // WebAssembly doesn't require any special alignment for member functions. 271 case WebAssembly: 328 // iOS on ARM64 and WebAssembly use the C++11 POD rules. They do not honor 331 case WebAssembly [all...] |
/prebuilts/clang/host/darwin-x86/clang-3957855/prebuilt_include/clang/include/clang/Basic/ |
TargetCXXABI.h | 92 /// The WebAssembly ABI is a modified version of the Itanium ABI. 103 /// TODO: At present the WebAssembly ABI is not considered stable, so none 105 WebAssembly, 144 case WebAssembly: 163 case WebAssembly: 183 case WebAssembly: 184 // WebAssembly doesn't require any special alignment for member functions. 270 case WebAssembly: 327 // iOS on ARM64 and WebAssembly use the C++11 POD rules. They do not honor 330 case WebAssembly [all...] |
/prebuilts/clang/host/darwin-x86/clang-3960126/prebuilt_include/clang/include/clang/Basic/ |
TargetCXXABI.h | 92 /// The WebAssembly ABI is a modified version of the Itanium ABI. 103 /// TODO: At present the WebAssembly ABI is not considered stable, so none 105 WebAssembly, 144 case WebAssembly: 163 case WebAssembly: 183 case WebAssembly: 184 // WebAssembly doesn't require any special alignment for member functions. 270 case WebAssembly: 327 // iOS on ARM64 and WebAssembly use the C++11 POD rules. They do not honor 330 case WebAssembly [all...] |
/prebuilts/clang/host/darwin-x86/clang-3977809/prebuilt_include/clang/include/clang/Basic/ |
TargetCXXABI.h | 92 /// The WebAssembly ABI is a modified version of the Itanium ABI. 103 /// TODO: At present the WebAssembly ABI is not considered stable, so none 105 WebAssembly, 144 case WebAssembly: 163 case WebAssembly: 183 case WebAssembly: 184 // WebAssembly doesn't require any special alignment for member functions. 270 case WebAssembly: 327 // iOS on ARM64 and WebAssembly use the C++11 POD rules. They do not honor 330 case WebAssembly [all...] |
/prebuilts/clang/host/darwin-x86/clang-4053586/prebuilt_include/clang/include/clang/Basic/ |
TargetCXXABI.h | 92 /// The WebAssembly ABI is a modified version of the Itanium ABI. 103 /// TODO: At present the WebAssembly ABI is not considered stable, so none 105 WebAssembly, 144 case WebAssembly: 163 case WebAssembly: 183 case WebAssembly: 184 // WebAssembly doesn't require any special alignment for member functions. 270 case WebAssembly: 327 // iOS on ARM64 and WebAssembly use the C++11 POD rules. They do not honor 330 case WebAssembly [all...] |
/prebuilts/clang/host/linux-x86/clang-3957855/prebuilt_include/clang/include/clang/Basic/ |
TargetCXXABI.h | 92 /// The WebAssembly ABI is a modified version of the Itanium ABI. 103 /// TODO: At present the WebAssembly ABI is not considered stable, so none 105 WebAssembly, 144 case WebAssembly: 163 case WebAssembly: 183 case WebAssembly: 184 // WebAssembly doesn't require any special alignment for member functions. 270 case WebAssembly: 327 // iOS on ARM64 and WebAssembly use the C++11 POD rules. They do not honor 330 case WebAssembly [all...] |
/prebuilts/clang/host/linux-x86/clang-3960126/prebuilt_include/clang/include/clang/Basic/ |
TargetCXXABI.h | 92 /// The WebAssembly ABI is a modified version of the Itanium ABI. 103 /// TODO: At present the WebAssembly ABI is not considered stable, so none 105 WebAssembly, 144 case WebAssembly: 163 case WebAssembly: 183 case WebAssembly: 184 // WebAssembly doesn't require any special alignment for member functions. 270 case WebAssembly: 327 // iOS on ARM64 and WebAssembly use the C++11 POD rules. They do not honor 330 case WebAssembly [all...] |
/prebuilts/clang/host/linux-x86/clang-3977809/prebuilt_include/clang/include/clang/Basic/ |
TargetCXXABI.h | 92 /// The WebAssembly ABI is a modified version of the Itanium ABI. 103 /// TODO: At present the WebAssembly ABI is not considered stable, so none 105 WebAssembly, 144 case WebAssembly: 163 case WebAssembly: 183 case WebAssembly: 184 // WebAssembly doesn't require any special alignment for member functions. 270 case WebAssembly: 327 // iOS on ARM64 and WebAssembly use the C++11 POD rules. They do not honor 330 case WebAssembly [all...] |
/prebuilts/clang/host/linux-x86/clang-4053586/prebuilt_include/clang/include/clang/Basic/ |
TargetCXXABI.h | 92 /// The WebAssembly ABI is a modified version of the Itanium ABI. 103 /// TODO: At present the WebAssembly ABI is not considered stable, so none 105 WebAssembly, 144 case WebAssembly: 163 case WebAssembly: 183 case WebAssembly: 184 // WebAssembly doesn't require any special alignment for member functions. 270 case WebAssembly: 327 // iOS on ARM64 and WebAssembly use the C++11 POD rules. They do not honor 330 case WebAssembly [all...] |
/external/llvm/lib/Target/WebAssembly/InstPrinter/ |
WebAssemblyInstPrinter.cpp | 1 //=- WebAssemblyInstPrinter.cpp - WebAssembly assembly instruction printing -=// 17 #include "WebAssembly.h" 71 case WebAssembly::LOOP: { 79 case WebAssembly::BLOCK: 82 case WebAssembly::END_LOOP: 87 case WebAssembly::END_BLOCK: 99 ? (Info.OperandType == WebAssembly::OPERAND_BASIC_BLOCK) 143 "WebAssembly variable_ops register ops don't use TSFlags"); 172 "WebAssembly variable_ops floating point ops don't use TSFlags"); 174 if (Info.OperandType == WebAssembly::OPERAND_FP32IMM) [all...] |