OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 689 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
700 } | 700 } |
701 | 701 |
702 | 702 |
703 #define DEFINE_GET_CONSTANT(Name, name, htype, boolean_value) \ | 703 #define DEFINE_GET_CONSTANT(Name, name, htype, boolean_value) \ |
704 HConstant* HGraph::GetConstant##Name() { \ | 704 HConstant* HGraph::GetConstant##Name() { \ |
705 if (!constant_##name##_.is_set()) { \ | 705 if (!constant_##name##_.is_set()) { \ |
706 HConstant* constant = new(zone()) HConstant( \ | 706 HConstant* constant = new(zone()) HConstant( \ |
707 Unique<Object>::CreateImmovable(isolate()->factory()->name##_value()), \ | 707 Unique<Object>::CreateImmovable(isolate()->factory()->name##_value()), \ |
708 Representation::Tagged(), \ | 708 Representation::Tagged(), \ |
709 htype, \ | 709 htype, \ |
| 710 true, \ |
| 711 boolean_value, \ |
710 false, \ | 712 false, \ |
711 true, \ | 713 ODDBALL_TYPE); \ |
712 false, \ | |
713 boolean_value); \ | |
714 constant->InsertAfter(entry_block()->first()); \ | 714 constant->InsertAfter(entry_block()->first()); \ |
715 constant_##name##_.set(constant); \ | 715 constant_##name##_.set(constant); \ |
716 } \ | 716 } \ |
717 return ReinsertConstantIfNecessary(constant_##name##_.get()); \ | 717 return ReinsertConstantIfNecessary(constant_##name##_.get()); \ |
718 } | 718 } |
719 | 719 |
720 | 720 |
721 DEFINE_GET_CONSTANT(Undefined, undefined, HType::Tagged(), false) | 721 DEFINE_GET_CONSTANT(Undefined, undefined, HType::Tagged(), false) |
722 DEFINE_GET_CONSTANT(True, true, HType::Boolean(), true) | 722 DEFINE_GET_CONSTANT(True, true, HType::Boolean(), true) |
723 DEFINE_GET_CONSTANT(False, false, HType::Boolean(), false) | 723 DEFINE_GET_CONSTANT(False, false, HType::Boolean(), false) |
(...skipping 10576 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11300 if (ShouldProduceTraceOutput()) { | 11300 if (ShouldProduceTraceOutput()) { |
11301 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); | 11301 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); |
11302 } | 11302 } |
11303 | 11303 |
11304 #ifdef DEBUG | 11304 #ifdef DEBUG |
11305 graph_->Verify(false); // No full verify. | 11305 graph_->Verify(false); // No full verify. |
11306 #endif | 11306 #endif |
11307 } | 11307 } |
11308 | 11308 |
11309 } } // namespace v8::internal | 11309 } } // namespace v8::internal |
OLD | NEW |