OLD | NEW |
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 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
274 // Returns false if there are phi-uses of the arguments-object | 274 // Returns false if there are phi-uses of the arguments-object |
275 // which are not supported by the optimizing compiler. | 275 // which are not supported by the optimizing compiler. |
276 bool CheckArgumentsPhiUses(); | 276 bool CheckArgumentsPhiUses(); |
277 | 277 |
278 // Returns false if there are phi-uses of an uninitialized const | 278 // Returns false if there are phi-uses of an uninitialized const |
279 // which are not supported by the optimizing compiler. | 279 // which are not supported by the optimizing compiler. |
280 bool CheckConstPhiUses(); | 280 bool CheckConstPhiUses(); |
281 | 281 |
282 void CollectPhis(); | 282 void CollectPhis(); |
283 | 283 |
284 Handle<Code> Compile(); | |
285 | |
286 void set_undefined_constant(HConstant* constant) { | 284 void set_undefined_constant(HConstant* constant) { |
287 undefined_constant_.set(constant); | 285 undefined_constant_.set(constant); |
288 } | 286 } |
289 HConstant* GetConstantUndefined() const { return undefined_constant_.get(); } | 287 HConstant* GetConstantUndefined() const { return undefined_constant_.get(); } |
290 HConstant* GetConstant1(); | 288 HConstant* GetConstant1(); |
291 HConstant* GetConstantMinus1(); | 289 HConstant* GetConstantMinus1(); |
292 HConstant* GetConstantTrue(); | 290 HConstant* GetConstantTrue(); |
293 HConstant* GetConstantFalse(); | 291 HConstant* GetConstantFalse(); |
294 HConstant* GetConstantHole(); | 292 HConstant* GetConstantHole(); |
295 | 293 |
(...skipping 10 matching lines...) Expand all Loading... |
306 int GetNextBlockID() { return next_block_id_++; } | 304 int GetNextBlockID() { return next_block_id_++; } |
307 int GetNextValueID(HValue* value) { | 305 int GetNextValueID(HValue* value) { |
308 values_.Add(value, zone()); | 306 values_.Add(value, zone()); |
309 return values_.length() - 1; | 307 return values_.length() - 1; |
310 } | 308 } |
311 HValue* LookupValue(int id) const { | 309 HValue* LookupValue(int id) const { |
312 if (id >= 0 && id < values_.length()) return values_[id]; | 310 if (id >= 0 && id < values_.length()) return values_[id]; |
313 return NULL; | 311 return NULL; |
314 } | 312 } |
315 | 313 |
| 314 bool Optimize(SmartArrayPointer<char>* deopt_reason); |
| 315 |
316 #ifdef DEBUG | 316 #ifdef DEBUG |
317 void Verify(bool do_full_verify) const; | 317 void Verify(bool do_full_verify) const; |
318 #endif | 318 #endif |
319 | 319 |
320 bool has_osr_loop_entry() { | 320 bool has_osr_loop_entry() { |
321 return osr_loop_entry_.is_set(); | 321 return osr_loop_entry_.is_set(); |
322 } | 322 } |
323 | 323 |
324 HBasicBlock* osr_loop_entry() { | 324 HBasicBlock* osr_loop_entry() { |
325 return osr_loop_entry_.get(); | 325 return osr_loop_entry_.get(); |
(...skipping 1119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1445 const char* filename_; | 1445 const char* filename_; |
1446 HeapStringAllocator string_allocator_; | 1446 HeapStringAllocator string_allocator_; |
1447 StringStream trace_; | 1447 StringStream trace_; |
1448 int indent_; | 1448 int indent_; |
1449 }; | 1449 }; |
1450 | 1450 |
1451 | 1451 |
1452 } } // namespace v8::internal | 1452 } } // namespace v8::internal |
1453 | 1453 |
1454 #endif // V8_HYDROGEN_H_ | 1454 #endif // V8_HYDROGEN_H_ |
OLD | NEW |