Home
last modified time | relevance | path

Searched refs:WebAssembly (Results 1 – 25 of 63) sorted by relevance

123

/external/llvm/lib/Target/WebAssembly/
DWebAssemblyFrameLowering.cpp74 unsigned SPReg = MRI.createVirtualRegister(&WebAssembly::I32RegClass); in adjustStackPointer()
76 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::CONST_I32), SPReg) in adjustStackPointer()
84 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::LOAD_I32), SPReg) in adjustStackPointer()
89 unsigned OffsetReg = MRI.createVirtualRegister(&WebAssembly::I32RegClass); in adjustStackPointer()
90 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::CONST_I32), OffsetReg) in adjustStackPointer()
93 TII->get(AdjustUp ? WebAssembly::ADD_I32 : WebAssembly::SUB_I32), in adjustStackPointer()
94 WebAssembly::SP32) in adjustStackPointer()
98 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::CONST_I32), OffsetReg) in adjustStackPointer()
102 BuildMI(MBB, InsertPt, DL, TII->get(WebAssembly::STORE_I32), WebAssembly::SP32) in adjustStackPointer()
105 .addReg(WebAssembly::SP32) in adjustStackPointer()
[all …]
DWebAssemblyRegisterInfo.cpp48 for (auto Reg : {WebAssembly::SP32, WebAssembly::SP64, WebAssembly::FP32, in getReservedRegs()
49 WebAssembly::FP64}) in getReservedRegs()
72 MI.getOperand(2).ChangeToRegister(WebAssembly::SP32, /*IsDef=*/false); in eliminateFrameIndex()
78 unsigned OffsetReg = MRI.createVirtualRegister(&WebAssembly::I32RegClass); in eliminateFrameIndex()
79 BuildMI(MBB, MI, MI.getDebugLoc(), TII->get(WebAssembly::CONST_I32), OffsetReg) in eliminateFrameIndex()
81 BuildMI(MBB, MI, MI.getDebugLoc(), TII->get(WebAssembly::ADD_I32), OffsetReg) in eliminateFrameIndex()
82 .addReg(WebAssembly::SP32) in eliminateFrameIndex()
92 /* !hasFP */ {WebAssembly::SP32, WebAssembly::SP64}, in getFrameRegister()
93 /* hasFP */ {WebAssembly::FP32, WebAssembly::FP64}}; in getFrameRegister()
103 return &WebAssembly::I64RegClass; in getPointerRegClass()
[all …]
DWebAssemblyInstrInfo.cpp31 : WebAssemblyGenInstrInfo(WebAssembly::ADJCALLSTACKDOWN, in WebAssemblyInstrInfo()
32 WebAssembly::ADJCALLSTACKUP), in WebAssemblyInstrInfo()
47 if (RC == &WebAssembly::I32RegClass) in copyPhysReg()
48 CopyLocalOpcode = WebAssembly::COPY_LOCAL_I32; in copyPhysReg()
49 else if (RC == &WebAssembly::I64RegClass) in copyPhysReg()
50 CopyLocalOpcode = WebAssembly::COPY_LOCAL_I64; in copyPhysReg()
51 else if (RC == &WebAssembly::F32RegClass) in copyPhysReg()
52 CopyLocalOpcode = WebAssembly::COPY_LOCAL_F32; in copyPhysReg()
53 else if (RC == &WebAssembly::F64RegClass) in copyPhysReg()
54 CopyLocalOpcode = WebAssembly::COPY_LOCAL_F64; in copyPhysReg()
[all …]
DWebAssemblyPeephole.cpp58 case WebAssembly::STORE8_I32: in runOnMachineFunction()
59 case WebAssembly::STORE16_I32: in runOnMachineFunction()
60 case WebAssembly::STORE8_I64: in runOnMachineFunction()
61 case WebAssembly::STORE16_I64: in runOnMachineFunction()
62 case WebAssembly::STORE32_I64: in runOnMachineFunction()
63 case WebAssembly::STORE_F32: in runOnMachineFunction()
64 case WebAssembly::STORE_F64: in runOnMachineFunction()
65 case WebAssembly::STORE_I32: in runOnMachineFunction()
66 case WebAssembly::STORE_I64: { in runOnMachineFunction()
DWebAssemblyStoreResults.cpp84 case WebAssembly::STORE8_I32: in runOnMachineFunction()
85 case WebAssembly::STORE16_I32: in runOnMachineFunction()
86 case WebAssembly::STORE8_I64: in runOnMachineFunction()
87 case WebAssembly::STORE16_I64: in runOnMachineFunction()
88 case WebAssembly::STORE32_I64: in runOnMachineFunction()
89 case WebAssembly::STORE_F32: in runOnMachineFunction()
90 case WebAssembly::STORE_F64: in runOnMachineFunction()
91 case WebAssembly::STORE_I32: in runOnMachineFunction()
92 case WebAssembly::STORE_I64: in runOnMachineFunction()
DWebAssembly.td1 //- 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 {
DWebAssemblyRegStackify.cpp68 if (!MI->definesRegister(WebAssembly::EXPR_STACK)) in ImposeStackInputOrdering()
69 MI->addOperand(MachineOperand::CreateReg(WebAssembly::EXPR_STACK, in ImposeStackInputOrdering()
81 if (!MI->readsRegister(WebAssembly::EXPR_STACK)) in ImposeStackOrdering()
82 MI->addOperand(MachineOperand::CreateReg(WebAssembly::EXPR_STACK, in ImposeStackOrdering()
188 if (Def->getOpcode() == WebAssembly::ARGUMENT_I32 || in runOnMachineFunction()
189 Def->getOpcode() == WebAssembly::ARGUMENT_I64 || in runOnMachineFunction()
190 Def->getOpcode() == WebAssembly::ARGUMENT_F32 || in runOnMachineFunction()
191 Def->getOpcode() == WebAssembly::ARGUMENT_F64) in runOnMachineFunction()
227 MF.getRegInfo().addLiveIn(WebAssembly::EXPR_STACK); in runOnMachineFunction()
229 MBB.addLiveIn(WebAssembly::EXPR_STACK); in runOnMachineFunction()
DREADME.txt1 //===-- README.txt - Notes for WebAssembly code gen -----------------------===//
3 This WebAssembly backend is presently in a very early stage of development.
7 For more information on WebAssembly itself, see the design documents:
8 * https://github.com/WebAssembly/design/blob/master/README.md
11 binary encoding of WebAssembly itself:
12 * https://github.com/WebAssembly/design/blob/master/AstSemantics.md
13 * https://github.com/WebAssembly/design/blob/master/BinaryEncoding.md
23 github.com/WebAssembly/experimental/blob/master/buildbot/torture_test.py
28 blocks and WebAssembly performs register allocation at a whole-function
31 for WebAssembly.
[all …]
DWebAssemblyRegNumbering.cpp73 case WebAssembly::ARGUMENT_I32: in runOnMachineFunction()
74 case WebAssembly::ARGUMENT_I64: in runOnMachineFunction()
75 case WebAssembly::ARGUMENT_F32: in runOnMachineFunction()
76 case WebAssembly::ARGUMENT_F64: in runOnMachineFunction()
105 MFI.addPReg(WebAssembly::SP32, CurReg++); in runOnMachineFunction()
DWebAssemblyAsmPrinter.cpp116 return WebAssembly::TypeToString(VT); in toString()
151 Param.setOpcode(WebAssembly::PARAM); in EmitFunctionBodyStart()
164 Result.setOpcode(WebAssembly::RESULT); in EmitFunctionBodyStart()
171 Local.setOpcode(WebAssembly::LOCAL); in EmitFunctionBodyStart()
204 case WebAssembly::ARGUMENT_I32: in EmitInstruction()
205 case WebAssembly::ARGUMENT_I64: in EmitInstruction()
206 case WebAssembly::ARGUMENT_F32: in EmitInstruction()
207 case WebAssembly::ARGUMENT_F64: in EmitInstruction()
211 case WebAssembly::LOOP_END: in EmitInstruction()
DWebAssemblyLowerBrUnless.cpp66 if (MI->getOpcode() != WebAssembly::BR_UNLESS) in runOnMachineFunction()
77 using namespace WebAssembly; in runOnMachineFunction()
109 unsigned ZeroReg = MRI.createVirtualRegister(&WebAssembly::I32RegClass); in runOnMachineFunction()
111 BuildMI(MBB, MI, MI->getDebugLoc(), TII.get(WebAssembly::CONST_I32), ZeroReg) in runOnMachineFunction()
113 unsigned Tmp = MRI.createVirtualRegister(&WebAssembly::I32RegClass); in runOnMachineFunction()
115 BuildMI(MBB, MI, MI->getDebugLoc(), TII.get(WebAssembly::EQ_I32), Tmp) in runOnMachineFunction()
125 BuildMI(MBB, MI, MI->getDebugLoc(), TII.get(WebAssembly::BR_IF)) in runOnMachineFunction()
DLLVMBuild.txt1 ;===- ./lib/Target/WebAssembly/LLVMBuild.txt -------------------*- Conf -*--===;
23 name = WebAssembly
30 parent = WebAssembly
32 add_to_library_groups = WebAssembly
DWebAssemblyArgumentMove.cpp70 case WebAssembly::ARGUMENT_I32: in IsArgument()
71 case WebAssembly::ARGUMENT_I64: in IsArgument()
72 case WebAssembly::ARGUMENT_F32: in IsArgument()
73 case WebAssembly::ARGUMENT_F64: in IsArgument()
DWebAssemblyRegisterInfo.td1 //WebAssemblyRegisterInfo.td-Describe the WebAssembly Registers -*- tablegen -*-
11 /// \brief This file describes the WebAssembly register classes and some nominal
17 let Namespace = "WebAssembly";
21 : RegisterClass<"WebAssembly", regTypes, alignment, regList>;
29 // WebAssembly may someday supports mixed 32-bit and 64-bit heaps in the same
DWebAssemblyInstrInfo.td1 // WebAssemblyInstrInfo.td-Describe the WebAssembly Instructions-*- tablegen -*-
11 /// \brief WebAssembly Instruction definitions.
16 // WebAssembly Instruction Predicate Definitions.
25 // WebAssembly-specific DAG Node Types.
40 // WebAssembly-specific DAG Nodes.
66 // WebAssembly-specific Operands.
72 // WebAssembly Instruction Format Definitions.
DWebAssemblyInstrFormats.td1 //=- WebAssemblyInstrFormats.td - WebAssembly Instr. Formats -*- tablegen -*-=//
11 /// \brief WebAssembly instruction format definitions.
15 // WebAssembly Instruction Format.
18 let Namespace = "WebAssembly";
31 // Unary and binary instructions, for the local types that WebAssembly supports.
DWebAssemblyInstrSIMD.td1 // WebAssemblyInstrSIMD.td - WebAssembly SIMD codegen support -*- tablegen -*-//
11 /// \brief WebAssembly SIMD operand code-gen constructs.
DWebAssemblyISD.def1 //- WebAssemblyISD.def - WebAssembly ISD ---------------------------*- C++ -*-//
11 /// \brief This file describes the various WebAssembly ISD node types.
/external/clang/include/clang/Basic/
DTargetCXXABI.h106 WebAssembly, enumerator
145 case WebAssembly: in isItaniumFamily()
164 case WebAssembly: in isMicrosoft()
184 case WebAssembly: in areMemberFunctionsAligned()
271 case WebAssembly: in canKeyFunctionBeInline()
331 case WebAssembly: in getTailPaddingUseRules()
/external/v8/test/mjsunit/wasm/
Dwasm-object-api.js15 assertEquals('object', typeof WebAssembly);
16 assertEquals('function', typeof WebAssembly.Module);
17 assertEquals('function', typeof WebAssembly.Instance);
18 assertEquals('function', typeof WebAssembly.compile);
Dinstantiate-module-basic.js56 let module = new WebAssembly.Module(buffer);
57 CheckInstance(new WebAssembly.Instance(module));
59 let promise = WebAssembly.compile(buffer);
60 promise.then(module => CheckInstance(new WebAssembly.Instance(module)));
/external/llvm/lib/Target/WebAssembly/InstPrinter/
DWebAssemblyInstPrinter.cpp99 case WebAssembly::PARAM: in printOperand()
100 case WebAssembly::RESULT: in printOperand()
101 case WebAssembly::LOCAL: in printOperand()
102 O << WebAssembly::TypeToString(MVT::SimpleValueType(Op.getImm())); in printOperand()
116 const char *llvm::WebAssembly::TypeToString(MVT Ty) { in TypeToString()
DLLVMBuild.txt1 ;===- ./lib/Target/WebAssembly/InstPrinter/LLVMBuild.txt -------*- Conf -*--===;
21 parent = WebAssembly
23 add_to_library_groups = WebAssembly
/external/llvm/lib/Target/WebAssembly/TargetInfo/
DLLVMBuild.txt1 ;===- ./lib/Target/WebAssembly/TargetInfo/LLVMBuild.txt --------*- Conf -*--===;
21 parent = WebAssembly
23 add_to_library_groups = WebAssembly
/external/llvm/lib/Target/WebAssembly/MCTargetDesc/
DLLVMBuild.txt1 ;===- ./lib/Target/WebAssembly/MCTargetDesc/LLVMBuild.txt ------*- Conf -*--===;
21 parent = WebAssembly
23 add_to_library_groups = WebAssembly

123