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

Side by Side Diff: src/IceAssemblerX86Base.h

Issue 1506653002: Subzero: Add Non-SFI support for x86-32. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fill in part of the lit test Created 5 years 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
OLDNEW
1 //===- subzero/src/IceAssemblerX86Base.h - base x86 assembler -*- C++ -*---===// 1 //===- subzero/src/IceAssemblerX86Base.h - base x86 assembler -*- C++ -*---===//
2 // 2 //
3 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 3 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
4 // for details. All rights reserved. Use of this source code is governed by a 4 // for details. All rights reserved. Use of this source code is governed by a
5 // BSD-style license that can be found in the LICENSE file. 5 // BSD-style license that can be found in the LICENSE file.
6 // 6 //
7 // Modified by the Subzero authors. 7 // Modified by the Subzero authors.
8 // 8 //
9 //===----------------------------------------------------------------------===// 9 //===----------------------------------------------------------------------===//
10 // 10 //
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 155
156 Ice::Label *getCfgNodeLabel(SizeT NodeNumber) override; 156 Ice::Label *getCfgNodeLabel(SizeT NodeNumber) override;
157 void bindCfgNodeLabel(const CfgNode *Node) override; 157 void bindCfgNodeLabel(const CfgNode *Node) override;
158 Label *getOrCreateCfgNodeLabel(SizeT Number); 158 Label *getOrCreateCfgNodeLabel(SizeT Number);
159 Label *getOrCreateLocalLabel(SizeT Number); 159 Label *getOrCreateLocalLabel(SizeT Number);
160 void bindLocalLabel(SizeT Number); 160 void bindLocalLabel(SizeT Number);
161 161
162 bool fixupIsPCRel(FixupKind Kind) const override { 162 bool fixupIsPCRel(FixupKind Kind) const override {
163 // Currently assuming this is the only PC-rel relocation type used. 163 // Currently assuming this is the only PC-rel relocation type used.
164 // TODO(jpp): Traits.PcRelTypes.count(Kind) != 0 164 // TODO(jpp): Traits.PcRelTypes.count(Kind) != 0
165 return Kind == Traits::PcRelFixup; 165 return Kind == Traits::FixupKindPcRel;
166 } 166 }
167 167
168 // Operations to emit GPR instructions (and dispatch on operand type). 168 // Operations to emit GPR instructions (and dispatch on operand type).
169 using TypedEmitGPR = void (AssemblerX86Base::*)(Type, 169 using TypedEmitGPR = void (AssemblerX86Base::*)(Type,
170 typename Traits::GPRRegister); 170 typename Traits::GPRRegister);
171 using TypedEmitAddr = 171 using TypedEmitAddr =
172 void (AssemblerX86Base::*)(Type, const typename Traits::Address &); 172 void (AssemblerX86Base::*)(Type, const typename Traits::Address &);
173 struct GPREmitterOneOp { 173 struct GPREmitterOneOp {
174 TypedEmitGPR Reg; 174 TypedEmitGPR Reg;
175 TypedEmitAddr Addr; 175 TypedEmitAddr Addr;
(...skipping 897 matching lines...) Expand 10 before | Expand all | Expand 10 after
1073 emitUint8(0x66); 1073 emitUint8(0x66);
1074 } 1074 }
1075 1075
1076 } // end of namespace X86Internal 1076 } // end of namespace X86Internal
1077 1077
1078 } // end of namespace Ice 1078 } // end of namespace Ice
1079 1079
1080 #include "IceAssemblerX86BaseImpl.h" 1080 #include "IceAssemblerX86BaseImpl.h"
1081 1081
1082 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H 1082 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698