| OLD | NEW |
| 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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_KERNEL_TO_IL_H_ | 5 #ifndef RUNTIME_VM_KERNEL_TO_IL_H_ |
| 6 #define RUNTIME_VM_KERNEL_TO_IL_H_ | 6 #define RUNTIME_VM_KERNEL_TO_IL_H_ |
| 7 | 7 |
| 8 #if !defined(DART_PRECOMPILED_RUNTIME) | 8 #if !defined(DART_PRECOMPILED_RUNTIME) |
| 9 | 9 |
| 10 #include "vm/growable_array.h" | 10 #include "vm/growable_array.h" |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 68 | 68 |
| 69 inline V Lookup(const Key& key) { | 69 inline V Lookup(const Key& key) { |
| 70 Pair* pair = | 70 Pair* pair = |
| 71 DirectChainedHashMap<RawPointerKeyValueTrait<K, V> >::Lookup(key); | 71 DirectChainedHashMap<RawPointerKeyValueTrait<K, V> >::Lookup(key); |
| 72 if (pair == NULL) { | 72 if (pair == NULL) { |
| 73 return V(); | 73 return V(); |
| 74 } else { | 74 } else { |
| 75 return pair->value; | 75 return pair->value; |
| 76 } | 76 } |
| 77 } | 77 } |
| 78 |
| 79 inline Pair* LookupPair(const Key& key) { |
| 80 return DirectChainedHashMap<RawPointerKeyValueTrait<K, V> >::Lookup(key); |
| 81 } |
| 78 }; | 82 }; |
| 79 | 83 |
| 84 template <typename K, typename V> |
| 85 class MallocMap |
| 86 : public MallocDirectChainedHashMap<RawPointerKeyValueTrait<K, V> > { |
| 87 public: |
| 88 typedef typename RawPointerKeyValueTrait<K, V>::Key Key; |
| 89 typedef typename RawPointerKeyValueTrait<K, V>::Value Value; |
| 90 typedef typename RawPointerKeyValueTrait<K, V>::Pair Pair; |
| 91 |
| 92 inline void Insert(const Key& key, const Value& value) { |
| 93 Pair pair(key, value); |
| 94 MallocDirectChainedHashMap<RawPointerKeyValueTrait<K, V> >::Insert(pair); |
| 95 } |
| 96 |
| 97 inline V Lookup(const Key& key) { |
| 98 Pair* pair = |
| 99 MallocDirectChainedHashMap<RawPointerKeyValueTrait<K, V> >::Lookup(key); |
| 100 if (pair == NULL) { |
| 101 return V(); |
| 102 } else { |
| 103 return pair->value; |
| 104 } |
| 105 } |
| 106 |
| 107 inline Pair* LookupPair(const Key& key) { |
| 108 return MallocDirectChainedHashMap<RawPointerKeyValueTrait<K, V> >::Lookup( |
| 109 key); |
| 110 } |
| 111 }; |
| 112 |
| 113 |
| 80 class BreakableBlock; | 114 class BreakableBlock; |
| 81 class CatchBlock; | 115 class CatchBlock; |
| 82 class FlowGraphBuilder; | 116 class FlowGraphBuilder; |
| 83 class SwitchBlock; | 117 class SwitchBlock; |
| 84 class TryCatchBlock; | 118 class TryCatchBlock; |
| 85 class TryFinallyBlock; | 119 class TryFinallyBlock; |
| 86 | 120 |
| 87 class Fragment { | 121 class Fragment { |
| 88 public: | 122 public: |
| 89 Instruction* entry; | 123 Instruction* entry; |
| (...skipping 876 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 966 namespace kernel { | 1000 namespace kernel { |
| 967 | 1001 |
| 968 RawObject* EvaluateMetadata(TreeNode* const kernel_node); | 1002 RawObject* EvaluateMetadata(TreeNode* const kernel_node); |
| 969 RawObject* BuildParameterDescriptor(TreeNode* const kernel_node); | 1003 RawObject* BuildParameterDescriptor(TreeNode* const kernel_node); |
| 970 | 1004 |
| 971 } // namespace kernel | 1005 } // namespace kernel |
| 972 } // namespace dart | 1006 } // namespace dart |
| 973 | 1007 |
| 974 #endif // !defined(DART_PRECOMPILED_RUNTIME) | 1008 #endif // !defined(DART_PRECOMPILED_RUNTIME) |
| 975 #endif // RUNTIME_VM_KERNEL_TO_IL_H_ | 1009 #endif // RUNTIME_VM_KERNEL_TO_IL_H_ |
| OLD | NEW |