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

Side by Side Diff: src/compiler/register-allocator-verifier.h

Issue 2205093002: [Turbofan] Make RegisterAllocatorVerifier tolerant of shared slots. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix fixed slots. Created 4 years, 4 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 | « no previous file | src/compiler/register-allocator-verifier.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_REGISTER_ALLOCATOR_VERIFIER_H_ 5 #ifndef V8_REGISTER_ALLOCATOR_VERIFIER_H_
6 #define V8_REGISTER_ALLOCATOR_VERIFIER_H_ 6 #define V8_REGISTER_ALLOCATOR_VERIFIER_H_
7 7
8 #include "src/zone-containers.h" 8 #include "src/zone-containers.h"
9 9
10 namespace v8 { 10 namespace v8 {
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 171
172 private: 172 private:
173 enum ConstraintType { 173 enum ConstraintType {
174 kConstant, 174 kConstant,
175 kImmediate, 175 kImmediate,
176 kRegister, 176 kRegister,
177 kFixedRegister, 177 kFixedRegister,
178 kFPRegister, 178 kFPRegister,
179 kFixedFPRegister, 179 kFixedFPRegister,
180 kSlot, 180 kSlot,
181 kFPSlot,
182 kFixedSlot, 181 kFixedSlot,
183 kNone, 182 kNone,
184 kNoneFP, 183 kNoneFP,
185 kExplicit, 184 kExplicit,
186 kSameAsFirst, 185 kSameAsFirst,
187 kRegisterAndSlot 186 kRegisterAndSlot
188 }; 187 };
189 188
190 struct OperandConstraint { 189 struct OperandConstraint {
191 ConstraintType type_; 190 ConstraintType type_;
192 int value_; // subkind index when relevant 191 // Constant or immediate value, register code, slot index, or slot size
192 // when relevant.
193 int value_;
193 int spilled_slot_; 194 int spilled_slot_;
194 int virtual_register_; 195 int virtual_register_;
195 }; 196 };
196 197
197 struct InstructionConstraint { 198 struct InstructionConstraint {
198 const Instruction* instruction_; 199 const Instruction* instruction_;
199 size_t operand_constaints_size_; 200 size_t operand_constaints_size_;
200 OperandConstraint* operand_constraints_; 201 OperandConstraint* operand_constraints_;
201 }; 202 };
202 203
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 ZoneMap<RpoNumber, DelayedAssessments*> outstanding_assessments_; 258 ZoneMap<RpoNumber, DelayedAssessments*> outstanding_assessments_;
258 259
259 DISALLOW_COPY_AND_ASSIGN(RegisterAllocatorVerifier); 260 DISALLOW_COPY_AND_ASSIGN(RegisterAllocatorVerifier);
260 }; 261 };
261 262
262 } // namespace compiler 263 } // namespace compiler
263 } // namespace internal 264 } // namespace internal
264 } // namespace v8 265 } // namespace v8
265 266
266 #endif 267 #endif
OLDNEW
« no previous file with comments | « no previous file | src/compiler/register-allocator-verifier.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698