OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 VM_METHOD_RECOGNIZER_H_ | 5 #ifndef VM_METHOD_RECOGNIZER_H_ |
6 #define VM_METHOD_RECOGNIZER_H_ | 6 #define VM_METHOD_RECOGNIZER_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 | 9 |
10 namespace dart { | 10 namespace dart { |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
150 0x306e6a79) \ | 150 0x306e6a79) \ |
151 V(_HashVMBase, set:_deletedKeys, LinkedHashMap_setDeletedKeys, Dynamic, \ | 151 V(_HashVMBase, set:_deletedKeys, LinkedHashMap_setDeletedKeys, Dynamic, \ |
152 0x3fe95fc2) \ | 152 0x3fe95fc2) \ |
153 | 153 |
154 | 154 |
155 // List of intrinsics: | 155 // List of intrinsics: |
156 // (class-name, function-name, intrinsification method, fingerprint). | 156 // (class-name, function-name, intrinsification method, fingerprint). |
157 #define CORE_LIB_INTRINSIC_LIST(V) \ | 157 #define CORE_LIB_INTRINSIC_LIST(V) \ |
158 V(_Smi, ~, Smi_bitNegate, Smi, 0x63bfee11) \ | 158 V(_Smi, ~, Smi_bitNegate, Smi, 0x63bfee11) \ |
159 V(_Smi, get:bitLength, Smi_bitLength, Smi, 0x25b2e24c) \ | 159 V(_Smi, get:bitLength, Smi_bitLength, Smi, 0x25b2e24c) \ |
| 160 V(_Smi, _bitAndFromSmi, Smi_bitAndFromSmi, Smi, 0x0df806ed) \ |
160 V(_Bigint, _lsh, Bigint_lsh, Dynamic, 0x5cd95513) \ | 161 V(_Bigint, _lsh, Bigint_lsh, Dynamic, 0x5cd95513) \ |
161 V(_Bigint, _rsh, Bigint_rsh, Dynamic, 0x2d68d0e1) \ | 162 V(_Bigint, _rsh, Bigint_rsh, Dynamic, 0x2d68d0e1) \ |
162 V(_Bigint, _absAdd, Bigint_absAdd, Dynamic, 0x492f4865) \ | 163 V(_Bigint, _absAdd, Bigint_absAdd, Dynamic, 0x492f4865) \ |
163 V(_Bigint, _absSub, Bigint_absSub, Dynamic, 0x174a3a34) \ | 164 V(_Bigint, _absSub, Bigint_absSub, Dynamic, 0x174a3a34) \ |
164 V(_Bigint, _mulAdd, Bigint_mulAdd, Dynamic, 0x24ced3ee) \ | 165 V(_Bigint, _mulAdd, Bigint_mulAdd, Dynamic, 0x24ced3ee) \ |
165 V(_Bigint, _sqrAdd, Bigint_sqrAdd, Dynamic, 0x60c6b633) \ | 166 V(_Bigint, _sqrAdd, Bigint_sqrAdd, Dynamic, 0x60c6b633) \ |
166 V(_Bigint, _estQuotientDigit, Bigint_estQuotientDigit, Dynamic, 0x2f867482) \ | 167 V(_Bigint, _estQuotientDigit, Bigint_estQuotientDigit, Dynamic, 0x2f867482) \ |
167 V(_Montgomery, _mulMod, Montgomery_mulMod, Dynamic, 0x741bed13) \ | 168 V(_Montgomery, _mulMod, Montgomery_mulMod, Dynamic, 0x741bed13) \ |
168 V(_Double, >, Double_greaterThan, Bool, 0x569b0a81) \ | 169 V(_Double, >, Double_greaterThan, Bool, 0x569b0a81) \ |
169 V(_Double, >=, Double_greaterEqualThan, Bool, 0x6c317340) \ | 170 V(_Double, >=, Double_greaterEqualThan, Bool, 0x6c317340) \ |
(...skipping 396 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
566 // Class that recognizes factories and returns corresponding result cid. | 567 // Class that recognizes factories and returns corresponding result cid. |
567 class FactoryRecognizer : public AllStatic { | 568 class FactoryRecognizer : public AllStatic { |
568 public: | 569 public: |
569 // Return kDynamicCid if factory is not recognized. | 570 // Return kDynamicCid if factory is not recognized. |
570 static intptr_t ResultCid(const Function& factory); | 571 static intptr_t ResultCid(const Function& factory); |
571 }; | 572 }; |
572 | 573 |
573 } // namespace dart | 574 } // namespace dart |
574 | 575 |
575 #endif // VM_METHOD_RECOGNIZER_H_ | 576 #endif // VM_METHOD_RECOGNIZER_H_ |
OLD | NEW |