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

Side by Side Diff: src/IceTargetLoweringX8632.h

Issue 1605103002: Subzero. X86. Refactors Address Mode formation. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: make format Created 4 years, 11 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/IceTargetLoweringARM32.cpp ('k') | src/IceTargetLoweringX8632.cpp » ('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/IceTargetLoweringX8632.h - x86-32 lowering ---*- C++ -*-===// 1 //===- subzero/src/IceTargetLoweringX8632.h - x86-32 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 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 return makeUnique<TargetX8632>(Func); 44 return makeUnique<TargetX8632>(Func);
45 } 45 }
46 46
47 std::unique_ptr<::Ice::Assembler> createAssembler() const override { 47 std::unique_ptr<::Ice::Assembler> createAssembler() const override {
48 return makeUnique<X8632::AssemblerX8632>(); 48 return makeUnique<X8632::AssemblerX8632>();
49 } 49 }
50 50
51 protected: 51 protected:
52 void _add_sp(Operand *Adjustment); 52 void _add_sp(Operand *Adjustment);
53 void _mov_sp(Operand *NewValue); 53 void _mov_sp(Operand *NewValue);
54 Traits::X86OperandMem *_sandbox_mem_reference(X86OperandMem *) { 54 Traits::X86OperandMem *_sandbox_mem_reference(X86OperandMem *Mem);
55 llvm::report_fatal_error("sandbox mem reference for x86-32.");
56 }
57 void _sub_sp(Operand *Adjustment); 55 void _sub_sp(Operand *Adjustment);
58 void _link_bp(); 56 void _link_bp();
59 void _unlink_bp(); 57 void _unlink_bp();
60 void _push_reg(Variable *Reg); 58 void _push_reg(Variable *Reg);
61 59
62 void initSandbox() {} 60 void initRebasePtr();
61 void initSandbox();
62 bool legalizeOptAddrForSandbox(OptAddr *Addr);
63 void emitSandboxedReturn(); 63 void emitSandboxedReturn();
64 void lowerIndirectJump(Variable *JumpTarget); 64 void lowerIndirectJump(Variable *JumpTarget);
65 void emitGetIP(CfgNode *Node); 65 void emitGetIP(CfgNode *Node);
66 Inst *emitCallToTarget(Operand *CallTarget, Variable *ReturnReg) override; 66 Inst *emitCallToTarget(Operand *CallTarget, Variable *ReturnReg) override;
67 Variable *moveReturnValueToRegister(Operand *Value, Type ReturnType) override; 67 Variable *moveReturnValueToRegister(Operand *Value, Type ReturnType) override;
68 68
69 private: 69 private:
70 ENABLE_MAKE_UNIQUE; 70 ENABLE_MAKE_UNIQUE;
71 friend class X8632::TargetX86Base<X8632::Traits>; 71 friend class X8632::TargetX86Base<X8632::Traits>;
72 72
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 explicit TargetHeaderX8632(GlobalContext *Ctx); 118 explicit TargetHeaderX8632(GlobalContext *Ctx);
119 119
120 private: 120 private:
121 ~TargetHeaderX8632() = default; 121 ~TargetHeaderX8632() = default;
122 }; 122 };
123 123
124 } // end of namespace X8632 124 } // end of namespace X8632
125 } // end of namespace Ice 125 } // end of namespace Ice
126 126
127 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H 127 #endif // SUBZERO_SRC_ICETARGETLOWERINGX8632_H
OLDNEW
« no previous file with comments | « src/IceTargetLoweringARM32.cpp ('k') | src/IceTargetLoweringX8632.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698