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

Side by Side Diff: src/IceAssemblerX86Base.h

Issue 1407273006: Generate block labels in the ARM hybrid assembler. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fix nit. Created 5 years, 2 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/IceAssemblerMIPS32.h ('k') | src/IceAssemblerX86BaseImpl.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/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 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 void padWithNop(intptr_t Padding) override { 145 void padWithNop(intptr_t Padding) override {
146 while (Padding > MAX_NOP_SIZE) { 146 while (Padding > MAX_NOP_SIZE) {
147 nop(MAX_NOP_SIZE); 147 nop(MAX_NOP_SIZE);
148 Padding -= MAX_NOP_SIZE; 148 Padding -= MAX_NOP_SIZE;
149 } 149 }
150 if (Padding) 150 if (Padding)
151 nop(Padding); 151 nop(Padding);
152 } 152 }
153 153
154 Ice::Label *getCfgNodeLabel(SizeT NodeNumber) override; 154 Ice::Label *getCfgNodeLabel(SizeT NodeNumber) override;
155 void bindCfgNodeLabel(SizeT NodeNumber) override; 155 void bindCfgNodeLabel(const CfgNode *Node) override;
156 Label *getOrCreateCfgNodeLabel(SizeT Number); 156 Label *getOrCreateCfgNodeLabel(SizeT Number);
157 Label *getOrCreateLocalLabel(SizeT Number); 157 Label *getOrCreateLocalLabel(SizeT Number);
158 void bindLocalLabel(SizeT Number); 158 void bindLocalLabel(SizeT Number);
159 159
160 bool fixupIsPCRel(FixupKind Kind) const override { 160 bool fixupIsPCRel(FixupKind Kind) const override {
161 // Currently assuming this is the only PC-rel relocation type used. 161 // Currently assuming this is the only PC-rel relocation type used.
162 // TODO(jpp): Traits.PcRelTypes.count(Kind) != 0 162 // TODO(jpp): Traits.PcRelTypes.count(Kind) != 0
163 return Kind == Traits::PcRelFixup; 163 return Kind == Traits::PcRelFixup;
164 } 164 }
165 165
(...skipping 900 matching lines...) Expand 10 before | Expand all | Expand 10 after
1066 emitUint8(0x66); 1066 emitUint8(0x66);
1067 } 1067 }
1068 1068
1069 } // end of namespace X86Internal 1069 } // end of namespace X86Internal
1070 1070
1071 } // end of namespace Ice 1071 } // end of namespace Ice
1072 1072
1073 #include "IceAssemblerX86BaseImpl.h" 1073 #include "IceAssemblerX86BaseImpl.h"
1074 1074
1075 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H 1075 #endif // SUBZERO_SRC_ICEASSEMBLERX86BASE_H
OLDNEW
« no previous file with comments | « src/IceAssemblerMIPS32.h ('k') | src/IceAssemblerX86BaseImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698