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

Side by Side Diff: src/hydrogen-instructions.h

Issue 61463005: Supported folding of constant size allocation followed by dynamic size allocation. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Rebasing Created 7 years, 1 month 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 | Annotate | Revision Log
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 1220 matching lines...) Expand 10 before | Expand all | Expand 10 after
1231 virtual int operand_position(int index) const V8_OVERRIDE { 1231 virtual int operand_position(int index) const V8_OVERRIDE {
1232 const int pos = position_.operand_position(index); 1232 const int pos = position_.operand_position(index);
1233 return (pos != RelocInfo::kNoPosition) ? pos : position(); 1233 return (pos != RelocInfo::kNoPosition) ? pos : position();
1234 } 1234 }
1235 void set_operand_position(Zone* zone, int index, int pos) { 1235 void set_operand_position(Zone* zone, int index, int pos) {
1236 ASSERT(0 <= index && index < OperandCount()); 1236 ASSERT(0 <= index && index < OperandCount());
1237 position_.ensure_storage_for_operand_positions(zone, OperandCount()); 1237 position_.ensure_storage_for_operand_positions(zone, OperandCount());
1238 position_.set_operand_position(index, pos); 1238 position_.set_operand_position(index, pos);
1239 } 1239 }
1240 1240
1241 bool Dominates(HInstruction* other);
1242
1241 bool CanTruncateToInt32() const { return CheckFlag(kTruncatingToInt32); } 1243 bool CanTruncateToInt32() const { return CheckFlag(kTruncatingToInt32); }
1242 1244
1243 virtual LInstruction* CompileToLithium(LChunkBuilder* builder) = 0; 1245 virtual LInstruction* CompileToLithium(LChunkBuilder* builder) = 0;
1244 1246
1245 #ifdef DEBUG 1247 #ifdef DEBUG
1246 virtual void Verify() V8_OVERRIDE; 1248 virtual void Verify() V8_OVERRIDE;
1247 #endif 1249 #endif
1248 1250
1249 virtual bool IsCall() { return false; } 1251 virtual bool IsCall() { return false; }
1250 1252
(...skipping 6199 matching lines...) Expand 10 before | Expand all | Expand 10 after
7450 virtual bool IsDeletable() const V8_OVERRIDE { return true; } 7452 virtual bool IsDeletable() const V8_OVERRIDE { return true; }
7451 }; 7453 };
7452 7454
7453 7455
7454 #undef DECLARE_INSTRUCTION 7456 #undef DECLARE_INSTRUCTION
7455 #undef DECLARE_CONCRETE_INSTRUCTION 7457 #undef DECLARE_CONCRETE_INSTRUCTION
7456 7458
7457 } } // namespace v8::internal 7459 } } // namespace v8::internal
7458 7460
7459 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ 7461 #endif // V8_HYDROGEN_INSTRUCTIONS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698