HomeSort by relevance Sort by last modified time
    Searched refs:WebAssembly (Results 1 - 25 of 79) sorted by null

1 2 3 4

  /external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/WebAssembly/MCTargetDesc/
WebAssemblyMCTargetDesc.h 1 //==- WebAssemblyMCTargetDesc.h - WebAssembly Target Descriptions -*- C++ -*-=//
11 /// This file provides WebAssembly-specific target descriptions.
46 namespace WebAssembly {
73 } // end namespace WebAssembly
88 // Defines symbolic names for WebAssembly registers. This defines a mapping from
94 // Defines symbolic names for the WebAssembly instructions.
103 namespace WebAssembly {
108 case WebAssembly::LOAD8_S_I32:
109 case WebAssembly::LOAD8_S_I32_S:
110 case WebAssembly::LOAD8_U_I32
    [all...]
WebAssemblyFixupKinds.h 1 //=- WebAssemblyFixupKinds.h - WebAssembly Specific Fixup Entries -*- C++ -*-=//
16 namespace WebAssembly {
28 } // end namespace WebAssembly
WebAssemblyMCCodeEmitter.cpp 1 //=- WebAssemblyMCCodeEmitter.cpp - Convert WebAssembly code to machine code -//
77 if (MI.getOpcode() == WebAssembly::BR_TABLE_I32 ||
78 MI.getOpcode() == WebAssembly::BR_TABLE_I64)
89 "WebAssembly non-variable_ops don't use TSFlags");
93 if (Info.OperandType == WebAssembly::OPERAND_I32IMM) {
95 } else if (Info.OperandType == WebAssembly::OPERAND_OFFSET32) {
97 } else if (Info.OperandType == WebAssembly::OPERAND_I64IMM) {
99 } else if (Info.OperandType == WebAssembly::OPERAND_GLOBAL) {
101 } else if (Info.OperandType == WebAssembly::OPERAND_SIGNATURE) {
115 "WebAssembly variable_ops floating point ops don't use TSFlags")
    [all...]
  /external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/WebAssembly/
WebAssemblySetP2AlignOperands.cpp 16 #include "WebAssembly.h"
34 return "WebAssembly Set p2align Operands";
50 "Set the p2align operands for WebAssembly loads and stores",
64 << WebAssembly::GetDefaultP2Align(MI.getOpcode())) &&
67 WebAssembly::OPERAND_P2ALIGN &&
71 // WebAssembly does not currently support supernatural alignment.
73 P2Align, uint64_t(WebAssembly::GetDefaultP2Align(MI.getOpcode())));
89 case WebAssembly::LOAD_I32:
90 case WebAssembly::LOAD_I64:
91 case WebAssembly::LOAD_F32
    [all...]
WebAssemblyUtilities.cpp 1 //===-- WebAssemblyUtilities.cpp - WebAssembly Utility Functions ----------===//
11 /// This file implements several utility functions for WebAssembly.
21 const char *const WebAssembly::ClangCallTerminateFn = "__clang_call_terminate";
22 const char *const WebAssembly::CxaBeginCatchFn = "__cxa_begin_catch";
23 const char *const WebAssembly::CxaRethrowFn = "__cxa_rethrow";
24 const char *const WebAssembly::StdTerminateFn = "_ZSt9terminatev";
25 const char *const WebAssembly::PersonalityWrapperFn =
28 bool WebAssembly::isArgument(const MachineInstr &MI) {
30 case WebAssembly::ARGUMENT_I32:
31 case WebAssembly::ARGUMENT_I64
    [all...]
WebAssemblyInstrInfo.cpp 1 //===-- WebAssemblyInstrInfo.cpp - WebAssembly Instruction Information ----===//
11 /// This file contains the WebAssembly implementation of the
32 : WebAssemblyGenInstrInfo(WebAssembly::ADJCALLSTACKDOWN,
33 WebAssembly::ADJCALLSTACKUP,
34 WebAssembly::CATCHRET),
40 case WebAssembly::CONST_I32:
41 case WebAssembly::CONST_I64:
42 case WebAssembly::CONST_F32:
43 case WebAssembly::CONST_F64:
65 if (RC == &WebAssembly::I32RegClass
    [all...]
WebAssemblyExplicitLocals.cpp 11 /// This file converts any remaining registers into WebAssembly locals.
20 #include "WebAssembly.h"
35 // which is not valid WebAssembly, though it may be more convenient for writing
39 cl::desc("WebAssembly: Disable emission of get_local/set_local."),
45 return "WebAssembly Explicit Locals";
64 "Convert registers to WebAssembly locals", false, false)
82 if (RC == &WebAssembly::I32RegClass)
83 return WebAssembly::DROP_I32;
84 if (RC == &WebAssembly::I64RegClass)
85 return WebAssembly::DROP_I64
    [all...]
WebAssemblyPeephole.cpp 1 //===-- WebAssemblyPeephole.cpp - WebAssembly Peephole Optimiztions -------===//
11 /// Late peephole optimizations for WebAssembly.
16 #include "WebAssembly.h"
29 cl::desc("WebAssembly: Disable fallthrough-return optimizations."),
35 return "WebAssembly late peephole optimizer";
54 "WebAssembly peephole optimizations", false, false)
89 assert(End->getOpcode() == WebAssembly::END_FUNCTION);
94 if (FallthroughOpc != WebAssembly::FALLTHROUGH_RETURN_VOID) {
132 case WebAssembly::CALL_I32:
133 case WebAssembly::CALL_I64:
    [all...]
WebAssemblyRegisterInfo.cpp 1 //===-- WebAssemblyRegisterInfo.cpp - WebAssembly Register Information ----===//
11 /// This file contains the WebAssembly implementation of the
48 for (auto Reg : {WebAssembly::SP32, WebAssembly::SP64, WebAssembly::FP32,
49 WebAssembly::FP64})
74 if ((MI.mayLoad() && FIOperandNum == WebAssembly::LoadAddressOperandNo) ||
75 (MI.mayStore() && FIOperandNum == WebAssembly::StoreAddressOperandNo)) {
89 if (MI.getOpcode() == WebAssembly::ADD_I32) {
98 if (Def && Def->getOpcode() == WebAssembly::CONST_I32 &
    [all...]
WebAssemblyReplacePhysRegs.cpp 15 /// WebAssembly doesn't actually have such physical registers. This pass is run
23 #include "WebAssembly.h"
43 return "WebAssembly Replace Physical Registers";
80 for (unsigned PReg = WebAssembly::NoRegister + 1;
81 PReg < WebAssembly::NUM_TARGET_REGS; ++PReg) {
83 if (PReg == WebAssembly::VALUE_STACK || PReg == WebAssembly::ARGUMENTS)
88 unsigned VReg = WebAssembly::NoRegister;
92 if (VReg == WebAssembly::NoRegister)
WebAssemblyFastISel.cpp 1 //===-- WebAssemblyFastISel.cpp - WebAssembly FastISel implementation -----===//
11 /// This file defines the WebAssembly-specific support for the FastISel
20 #include "WebAssembly.h"
378 &WebAssembly::I64RegClass :
379 &WebAssembly::I32RegClass);
381 WebAssembly::CONST_I64 :
382 WebAssembly::CONST_I32;
458 unsigned Imm = createResultReg(&WebAssembly::I32RegClass);
460 TII.get(WebAssembly::CONST_I32), Imm)
463 unsigned Result = createResultReg(&WebAssembly::I32RegClass)
    [all...]
WebAssemblyFrameLowering.cpp 1 //===-- WebAssemblyFrameLowering.cpp - WebAssembly Frame Lowering ----------==//
11 /// This file contains the WebAssembly implementation of
14 /// On WebAssembly, there aren't a lot of things to do here. There are no
109 BuildMI(MBB, InsertStore, DL, TII->get(WebAssembly::SET_GLOBAL_I32))
124 writeSPToMemory(WebAssembly::SP32, MF, MBB, I, I, DL);
134 "WebAssembly should not have callee-saved registers");
143 while (InsertPt != MBB.end() && WebAssembly::isArgument(*InsertPt))
149 unsigned SPReg = WebAssembly::SP32;
155 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::GET_GLOBAL_I32), SPReg)
163 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::COPY), BasePtr
    [all...]
WebAssemblyCFGStackify.cpp 14 /// scope boundaries serve as the labels for WebAssembly's control transfers.
17 /// WebAssembly, provided that all loops are single-entry.
22 #include "WebAssembly.h"
40 StringRef getPassName() const override { return "WebAssembly CFG Stackify"; }
61 "Insert BLOCK and LOOP markers for WebAssembly scopes",
131 MBB.getNumber() > WebAssembly::getBottom(HeaderLoop)->getNumber()) {
135 while (InsertPos->getOpcode() == WebAssembly::END_BLOCK ||
136 InsertPos->getOpcode() == WebAssembly::END_LOOP)
143 WebAssembly::isChild(*std::prev(InsertPos), MFI) &&
144 std::prev(InsertPos)->getOpcode() != WebAssembly::LOOP &
    [all...]
  /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...]
  /external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/WebAssembly/InstPrinter/
WebAssemblyInstPrinter.cpp 1 //=- WebAssemblyInstPrinter.cpp - WebAssembly assembly instruction printing -=//
17 #include "WebAssembly.h"
61 (MI->getOpcode() != WebAssembly::CALL_INDIRECT_VOID ||
76 case WebAssembly::LOOP: {
81 case WebAssembly::BLOCK:
84 case WebAssembly::END_LOOP:
89 case WebAssembly::END_BLOCK:
101 WebAssembly::OPERAND_BASIC_BLOCK)
146 "WebAssembly variable_ops register ops don't use TSFlags");
176 "WebAssembly variable_ops floating point ops don't use TSFlags")
    [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...]
  /external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/WebAssembly/Disassembler/
WebAssemblyDisassembler.cpp 1 //==- WebAssemblyDisassembler.cpp - Disassembler for WebAssembly -*- C++ -*-==//
11 /// This file is part of the WebAssembly Disassembler.
19 #include "WebAssembly.h"
141 case WebAssembly::OPERAND_BASIC_BLOCK:
142 case WebAssembly::OPERAND_LOCAL:
143 case WebAssembly::OPERAND_GLOBAL:
144 case WebAssembly::OPERAND_FUNCTION32:
145 case WebAssembly::OPERAND_OFFSET32:
146 case WebAssembly::OPERAND_P2ALIGN:
147 case WebAssembly::OPERAND_TYPEINDEX
    [all...]

Completed in 444 milliseconds

1 2 3 4