OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef RUNTIME_VM_INTERMEDIATE_LANGUAGE_H_ | 5 #ifndef RUNTIME_VM_INTERMEDIATE_LANGUAGE_H_ |
6 #define RUNTIME_VM_INTERMEDIATE_LANGUAGE_H_ | 6 #define RUNTIME_VM_INTERMEDIATE_LANGUAGE_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 #include "vm/ast.h" | 9 #include "vm/ast.h" |
10 #include "vm/growable_array.h" | 10 #include "vm/growable_array.h" |
(...skipping 3737 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3748 const intptr_t cid = value()->Type()->ToNullableCid(); | 3748 const intptr_t cid = value()->Type()->ToNullableCid(); |
3749 // Write barrier is skipped for nullable and non-nullable smis. | 3749 // Write barrier is skipped for nullable and non-nullable smis. |
3750 ASSERT(cid != kSmiCid); | 3750 ASSERT(cid != kSmiCid); |
3751 return (cid == kDynamicCid); | 3751 return (cid == kDynamicCid); |
3752 } | 3752 } |
3753 | 3753 |
3754 const Field& field_; | 3754 const Field& field_; |
3755 intptr_t offset_in_bytes_; | 3755 intptr_t offset_in_bytes_; |
3756 const StoreBarrierType emit_store_barrier_; | 3756 const StoreBarrierType emit_store_barrier_; |
3757 const TokenPosition token_pos_; | 3757 const TokenPosition token_pos_; |
3758 // Marks initialiing stores. E.g. in the constructor. | 3758 // Marks initializing stores. E.g. in the constructor. |
3759 bool is_initialization_; | 3759 bool is_initialization_; |
3760 | 3760 |
3761 DISALLOW_COPY_AND_ASSIGN(StoreInstanceFieldInstr); | 3761 DISALLOW_COPY_AND_ASSIGN(StoreInstanceFieldInstr); |
3762 }; | 3762 }; |
3763 | 3763 |
3764 | 3764 |
3765 class GuardFieldInstr : public TemplateInstruction<1, NoThrow, Pure> { | 3765 class GuardFieldInstr : public TemplateInstruction<1, NoThrow, Pure> { |
3766 public: | 3766 public: |
3767 GuardFieldInstr(Value* value, const Field& field, intptr_t deopt_id) | 3767 GuardFieldInstr(Value* value, const Field& field, intptr_t deopt_id) |
3768 : TemplateInstruction(deopt_id), field_(field) { | 3768 : TemplateInstruction(deopt_id), field_(field) { |
(...skipping 4487 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8256 LocationSummary* Name::MakeLocationSummary(Zone* zone, bool opt) const { \ | 8256 LocationSummary* Name::MakeLocationSummary(Zone* zone, bool opt) const { \ |
8257 UNIMPLEMENTED(); \ | 8257 UNIMPLEMENTED(); \ |
8258 return NULL; \ | 8258 return NULL; \ |
8259 } \ | 8259 } \ |
8260 void Name::EmitNativeCode(FlowGraphCompiler* compiler) { UNIMPLEMENTED(); } | 8260 void Name::EmitNativeCode(FlowGraphCompiler* compiler) { UNIMPLEMENTED(); } |
8261 | 8261 |
8262 | 8262 |
8263 } // namespace dart | 8263 } // namespace dart |
8264 | 8264 |
8265 #endif // RUNTIME_VM_INTERMEDIATE_LANGUAGE_H_ | 8265 #endif // RUNTIME_VM_INTERMEDIATE_LANGUAGE_H_ |
OLD | NEW |