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

Side by Side Diff: src/x64/lithium-codegen-x64.h

Issue 16128004: Reorder switch clauses using newly-introduced execution counters in (Closed) Base URL: gh:v8/v8.git@master
Patch Set: tweak heuristic Created 7 years, 6 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/x64/full-codegen-x64.cc ('k') | src/x64/lithium-codegen-x64.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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 : zone_(info->zone()), 50 : zone_(info->zone()),
51 chunk_(static_cast<LPlatformChunk*>(chunk)), 51 chunk_(static_cast<LPlatformChunk*>(chunk)),
52 masm_(assembler), 52 masm_(assembler),
53 info_(info), 53 info_(info),
54 current_block_(-1), 54 current_block_(-1),
55 current_instruction_(-1), 55 current_instruction_(-1),
56 instructions_(chunk->instructions()), 56 instructions_(chunk->instructions()),
57 deoptimizations_(4, info->zone()), 57 deoptimizations_(4, info->zone()),
58 jump_table_(4, info->zone()), 58 jump_table_(4, info->zone()),
59 deoptimization_literals_(8, info->zone()), 59 deoptimization_literals_(8, info->zone()),
60 deopt_counter_cells_(4, info->zone()),
60 prototype_maps_(0, info->zone()), 61 prototype_maps_(0, info->zone()),
61 transition_maps_(0, info->zone()), 62 transition_maps_(0, info->zone()),
62 inlined_function_count_(0), 63 inlined_function_count_(0),
63 scope_(info->scope()), 64 scope_(info->scope()),
64 status_(UNUSED), 65 status_(UNUSED),
65 translations_(info->zone()), 66 translations_(info->zone()),
66 deferred_(8, info->zone()), 67 deferred_(8, info->zone()),
67 osr_pc_offset_(-1), 68 osr_pc_offset_(-1),
68 last_lazy_deopt_pc_(0), 69 last_lazy_deopt_pc_(0),
69 frame_is_built_(false), 70 frame_is_built_(false),
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 void SoftDeoptimize(LEnvironment* environment); 256 void SoftDeoptimize(LEnvironment* environment);
256 void AddToTranslation(Translation* translation, 257 void AddToTranslation(Translation* translation,
257 LOperand* op, 258 LOperand* op,
258 bool is_tagged, 259 bool is_tagged,
259 bool is_uint32, 260 bool is_uint32,
260 bool arguments_known, 261 bool arguments_known,
261 int arguments_index, 262 int arguments_index,
262 int arguments_count); 263 int arguments_count);
263 void RegisterDependentCodeForEmbeddedMaps(Handle<Code> code); 264 void RegisterDependentCodeForEmbeddedMaps(Handle<Code> code);
264 void PopulateDeoptimizationData(Handle<Code> code); 265 void PopulateDeoptimizationData(Handle<Code> code);
266 void PopulateDeoptCounterCells(Handle<Code> code);
265 int DefineDeoptimizationLiteral(Handle<Object> literal); 267 int DefineDeoptimizationLiteral(Handle<Object> literal);
266 268
267 void PopulateDeoptimizationLiteralsWithInlinedFunctions(); 269 void PopulateDeoptimizationLiteralsWithInlinedFunctions();
268 270
269 Register ToRegister(int index) const; 271 Register ToRegister(int index) const;
270 XMMRegister ToDoubleRegister(int index) const; 272 XMMRegister ToDoubleRegister(int index) const;
271 Operand BuildFastArrayOperand( 273 Operand BuildFastArrayOperand(
272 LOperand* elements_pointer, 274 LOperand* elements_pointer,
273 LOperand* key, 275 LOperand* key,
274 ElementsKind elements_kind, 276 ElementsKind elements_kind,
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
356 LPlatformChunk* const chunk_; 358 LPlatformChunk* const chunk_;
357 MacroAssembler* const masm_; 359 MacroAssembler* const masm_;
358 CompilationInfo* const info_; 360 CompilationInfo* const info_;
359 361
360 int current_block_; 362 int current_block_;
361 int current_instruction_; 363 int current_instruction_;
362 const ZoneList<LInstruction*>* instructions_; 364 const ZoneList<LInstruction*>* instructions_;
363 ZoneList<LEnvironment*> deoptimizations_; 365 ZoneList<LEnvironment*> deoptimizations_;
364 ZoneList<Deoptimizer::JumpTableEntry> jump_table_; 366 ZoneList<Deoptimizer::JumpTableEntry> jump_table_;
365 ZoneList<Handle<Object> > deoptimization_literals_; 367 ZoneList<Handle<Object> > deoptimization_literals_;
368 ZoneList<LDeoptCounterCell*> deopt_counter_cells_;
366 ZoneList<Handle<Map> > prototype_maps_; 369 ZoneList<Handle<Map> > prototype_maps_;
367 ZoneList<Handle<Map> > transition_maps_; 370 ZoneList<Handle<Map> > transition_maps_;
368 int inlined_function_count_; 371 int inlined_function_count_;
369 Scope* const scope_; 372 Scope* const scope_;
370 Status status_; 373 Status status_;
371 TranslationBuffer translations_; 374 TranslationBuffer translations_;
372 ZoneList<LDeferredCode*> deferred_; 375 ZoneList<LDeferredCode*> deferred_;
373 int osr_pc_offset_; 376 int osr_pc_offset_;
374 int last_lazy_deopt_pc_; 377 int last_lazy_deopt_pc_;
375 bool frame_is_built_; 378 bool frame_is_built_;
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
436 LCodeGen* codegen_; 439 LCodeGen* codegen_;
437 Label entry_; 440 Label entry_;
438 Label exit_; 441 Label exit_;
439 Label* external_exit_; 442 Label* external_exit_;
440 int instruction_index_; 443 int instruction_index_;
441 }; 444 };
442 445
443 } } // namespace v8::internal 446 } } // namespace v8::internal
444 447
445 #endif // V8_X64_LITHIUM_CODEGEN_X64_H_ 448 #endif // V8_X64_LITHIUM_CODEGEN_X64_H_
OLDNEW
« no previous file with comments | « src/x64/full-codegen-x64.cc ('k') | src/x64/lithium-codegen-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698