Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(214)

Side by Side Diff: src/IceTargetLoweringX86Base.h

Issue 1876413002: Subzero. WASM. Additional progress. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Code review feedback and merging with master Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/IceTargetLoweringMIPS32.cpp ('k') | src/IceTargetLoweringX86BaseImpl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===- subzero/src/IceTargetLoweringX86Base.h - x86 lowering ----*- C++ -*-===// 1 //===- subzero/src/IceTargetLoweringX86Base.h - x86 lowering ----*- C++ -*-===//
2 // 2 //
3 // The Subzero Code Generator 3 // The Subzero Code Generator
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 /// 9 ///
10 /// \file 10 /// \file
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 void initSandbox() { 240 void initSandbox() {
241 assert(SandboxingType != ST_None); 241 assert(SandboxingType != ST_None);
242 dispatchToConcrete(&Traits::ConcreteTarget::initSandbox); 242 dispatchToConcrete(&Traits::ConcreteTarget::initSandbox);
243 } 243 }
244 244
245 void lowerAlloca(const InstAlloca *Instr) override; 245 void lowerAlloca(const InstAlloca *Instr) override;
246 void lowerArguments() override; 246 void lowerArguments() override;
247 void lowerArithmetic(const InstArithmetic *Instr) override; 247 void lowerArithmetic(const InstArithmetic *Instr) override;
248 void lowerAssign(const InstAssign *Instr) override; 248 void lowerAssign(const InstAssign *Instr) override;
249 void lowerBr(const InstBr *Instr) override; 249 void lowerBr(const InstBr *Instr) override;
250 void lowerBreakpoint(const InstBreakpoint *Instr) override;
250 void lowerCall(const InstCall *Instr) override; 251 void lowerCall(const InstCall *Instr) override;
251 void lowerCast(const InstCast *Instr) override; 252 void lowerCast(const InstCast *Instr) override;
252 void lowerExtractElement(const InstExtractElement *Instr) override; 253 void lowerExtractElement(const InstExtractElement *Instr) override;
253 void lowerFcmp(const InstFcmp *Instr) override; 254 void lowerFcmp(const InstFcmp *Instr) override;
254 void lowerIcmp(const InstIcmp *Instr) override; 255 void lowerIcmp(const InstIcmp *Instr) override;
255 256
256 void lowerIntrinsicCall(const InstIntrinsicCall *Instr) override; 257 void lowerIntrinsicCall(const InstIntrinsicCall *Instr) override;
257 void lowerInsertElement(const InstInsertElement *Instr) override; 258 void lowerInsertElement(const InstInsertElement *Instr) override;
258 void lowerLoad(const InstLoad *Instr) override; 259 void lowerLoad(const InstLoad *Instr) override;
259 void lowerPhi(const InstPhi *Instr) override; 260 void lowerPhi(const InstPhi *Instr) override;
(...skipping 389 matching lines...) Expand 10 before | Expand all | Expand 10 after
649 Context.insert<typename Traits::Insts::Imul>(Dest, Src0); 650 Context.insert<typename Traits::Insts::Imul>(Dest, Src0);
650 } 651 }
651 void _imul_imm(Variable *Dest, Operand *Src0, Constant *Imm) { 652 void _imul_imm(Variable *Dest, Operand *Src0, Constant *Imm) {
652 AutoMemorySandboxer<> _(this, &Dest, &Src0); 653 AutoMemorySandboxer<> _(this, &Dest, &Src0);
653 Context.insert<typename Traits::Insts::ImulImm>(Dest, Src0, Imm); 654 Context.insert<typename Traits::Insts::ImulImm>(Dest, Src0, Imm);
654 } 655 }
655 void _insertps(Variable *Dest, Operand *Src0, Operand *Src1) { 656 void _insertps(Variable *Dest, Operand *Src0, Operand *Src1) {
656 AutoMemorySandboxer<> _(this, &Dest, &Src0, &Src1); 657 AutoMemorySandboxer<> _(this, &Dest, &Src0, &Src1);
657 Context.insert<typename Traits::Insts::Insertps>(Dest, Src0, Src1); 658 Context.insert<typename Traits::Insts::Insertps>(Dest, Src0, Src1);
658 } 659 }
660 void _int3() { Context.insert<typename Traits::Insts::Int3>(); }
659 void _jmp(Operand *Target) { 661 void _jmp(Operand *Target) {
660 AutoMemorySandboxer<> _(this, &Target); 662 AutoMemorySandboxer<> _(this, &Target);
661 Context.insert<typename Traits::Insts::Jmp>(Target); 663 Context.insert<typename Traits::Insts::Jmp>(Target);
662 } 664 }
663 void _lea(Variable *Dest, Operand *Src0) { 665 void _lea(Variable *Dest, Operand *Src0) {
664 Context.insert<typename Traits::Insts::Lea>(Dest, Src0); 666 Context.insert<typename Traits::Insts::Lea>(Dest, Src0);
665 } 667 }
666 void _link_bp() { dispatchToConcrete(&Traits::ConcreteTarget::_link_bp); } 668 void _link_bp() { dispatchToConcrete(&Traits::ConcreteTarget::_link_bp); }
667 void _push_reg(Variable *Reg) { 669 void _push_reg(Variable *Reg) {
668 dispatchToConcrete(&Traits::ConcreteTarget::_push_reg, std::move(Reg)); 670 dispatchToConcrete(&Traits::ConcreteTarget::_push_reg, std::move(Reg));
(...skipping 457 matching lines...) Expand 10 before | Expand all | Expand 10 after
1126 1128
1127 explicit TargetHeaderX86(GlobalContext *Ctx) : TargetHeaderLowering(Ctx) {} 1129 explicit TargetHeaderX86(GlobalContext *Ctx) : TargetHeaderLowering(Ctx) {}
1128 }; 1130 };
1129 1131
1130 } // end of namespace X86NAMESPACE 1132 } // end of namespace X86NAMESPACE
1131 } // end of namespace Ice 1133 } // end of namespace Ice
1132 1134
1133 #include "IceTargetLoweringX86BaseImpl.h" 1135 #include "IceTargetLoweringX86BaseImpl.h"
1134 1136
1135 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASE_H 1137 #endif // SUBZERO_SRC_ICETARGETLOWERINGX86BASE_H
OLDNEW
« no previous file with comments | « src/IceTargetLoweringMIPS32.cpp ('k') | src/IceTargetLoweringX86BaseImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698