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 V(_Bigint, get:_used, Bigint_getUsed, 1308559334) \ | 150 V(_Bigint, get:_used, Bigint_getUsed, 1308559334) \ |
151 V(_Bigint, get:_digits, Bigint_getDigits, 1408092463) \ | 151 V(_Bigint, get:_digits, Bigint_getDigits, 1408092463) \ |
152 | 152 |
153 // List of intrinsics: | 153 // List of intrinsics: |
154 // (class-name, function-name, intrinsification method, fingerprint). | 154 // (class-name, function-name, intrinsification method, fingerprint). |
155 #define CORE_LIB_INTRINSIC_LIST(V) \ | 155 #define CORE_LIB_INTRINSIC_LIST(V) \ |
156 V(_Smi, ~, Smi_bitNegate, 134149043) \ | 156 V(_Smi, ~, Smi_bitNegate, 134149043) \ |
157 V(_Smi, get:bitLength, Smi_bitLength, 869986288) \ | 157 V(_Smi, get:bitLength, Smi_bitLength, 869986288) \ |
158 V(_Bigint, set:_neg, Bigint_setNeg, 1924982939) \ | 158 V(_Bigint, set:_neg, Bigint_setNeg, 1924982939) \ |
159 V(_Bigint, set:_used, Bigint_setUsed, 1574448752) \ | 159 V(_Bigint, set:_used, Bigint_setUsed, 1574448752) \ |
160 V(_Bigint, _set_digits, Bigint_setDigits, 1865626071) \ | 160 V(_Bigint, set:_digits, Bigint_setDigits, 1109140916) \ |
161 V(_Bigint, _absAdd, Bigint_absAdd, 97148049) \ | 161 V(_Bigint, _absAdd, Bigint_absAdd, 97148049) \ |
162 V(_Bigint, _absSub, Bigint_absSub, 159012285) \ | 162 V(_Bigint, _absSub, Bigint_absSub, 159012285) \ |
163 V(_Bigint, _mulAdd, Bigint_mulAdd, 1625285265) \ | 163 V(_Bigint, _mulAdd, Bigint_mulAdd, 1625285265) \ |
164 V(_Bigint, _sqrAdd, Bigint_sqrAdd, 56442243) \ | 164 V(_Bigint, _sqrAdd, Bigint_sqrAdd, 56442243) \ |
165 V(_Bigint, _estQuotientDigit, Bigint_estQuotientDigit, 1844507489) \ | 165 V(_Bigint, _estQuotientDigit, Bigint_estQuotientDigit, 1844507489) \ |
166 V(_Montgomery, _mulMod, Montgomery_mulMod, 1004817085) \ | 166 V(_Montgomery, _mulMod, Montgomery_mulMod, 1004817085) \ |
167 V(_Double, >, Double_greaterThan, 1538121903) \ | 167 V(_Double, >, Double_greaterThan, 1538121903) \ |
168 V(_Double, >=, Double_greaterEqualThan, 1058495718) \ | 168 V(_Double, >=, Double_greaterEqualThan, 1058495718) \ |
169 V(_Double, <, Double_lessThan, 62910596) \ | 169 V(_Double, <, Double_lessThan, 62910596) \ |
170 V(_Double, <=, Double_lessEqualThan, 1902937798) \ | 170 V(_Double, <=, Double_lessEqualThan, 1902937798) \ |
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
374 V(::, pow, MathPow, 1381728863) \ | 374 V(::, pow, MathPow, 1381728863) \ |
375 V(::, sin, MathSin, 1741396147) \ | 375 V(::, sin, MathSin, 1741396147) \ |
376 V(::, sqrt, MathSqrt, 101545548) \ | 376 V(::, sqrt, MathSqrt, 101545548) \ |
377 V(::, tan, MathTan, 982072809) \ | 377 V(::, tan, MathTan, 982072809) \ |
378 V(Lists, copy, ListsCopy, 605584668) \ | 378 V(Lists, copy, ListsCopy, 605584668) \ |
379 V(_Bigint, get:_neg, Bigint_getNeg, 1151543890) \ | 379 V(_Bigint, get:_neg, Bigint_getNeg, 1151543890) \ |
380 V(_Bigint, set:_neg, Bigint_setNeg, 1924982939) \ | 380 V(_Bigint, set:_neg, Bigint_setNeg, 1924982939) \ |
381 V(_Bigint, get:_used, Bigint_getUsed, 1308559334) \ | 381 V(_Bigint, get:_used, Bigint_getUsed, 1308559334) \ |
382 V(_Bigint, set:_used, Bigint_setUsed, 1574448752) \ | 382 V(_Bigint, set:_used, Bigint_setUsed, 1574448752) \ |
383 V(_Bigint, get:_digits, Bigint_getDigits, 1408092463) \ | 383 V(_Bigint, get:_digits, Bigint_getDigits, 1408092463) \ |
384 V(_Bigint, set:_digits, Bigint_setDigits, 1625268649) \ | 384 V(_Bigint, set:_digits, Bigint_setDigits, 1109140916) \ |
385 V(_Bigint, _set_digits, Bigint_setDigits, 1865626071) \ | |
386 | 385 |
387 // A list of core function that should never be inlined. | 386 // A list of core function that should never be inlined. |
388 #define INLINE_BLACK_LIST(V) \ | 387 #define INLINE_BLACK_LIST(V) \ |
389 V(_Bigint, _absAdd, Bigint_absAdd, 97148049) \ | 388 V(_Bigint, _absAdd, Bigint_absAdd, 97148049) \ |
390 V(_Bigint, _absSub, Bigint_absSub, 159012285) \ | 389 V(_Bigint, _absSub, Bigint_absSub, 159012285) \ |
391 V(_Bigint, _mulAdd, Bigint_mulAdd, 1625285265) \ | 390 V(_Bigint, _mulAdd, Bigint_mulAdd, 1625285265) \ |
392 V(_Bigint, _sqrAdd, Bigint_sqrAdd, 56442243) \ | 391 V(_Bigint, _sqrAdd, Bigint_sqrAdd, 56442243) \ |
393 V(_Bigint, _estQuotientDigit, Bigint_estQuotientDigit, 1844507489) \ | 392 V(_Bigint, _estQuotientDigit, Bigint_estQuotientDigit, 1844507489) \ |
394 V(_Montgomery, _mulMod, Montgomery_mulMod, 1004817085) \ | 393 V(_Montgomery, _mulMod, Montgomery_mulMod, 1004817085) \ |
395 | 394 |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
437 static Kind RecognizeKind(const Function& function); | 436 static Kind RecognizeKind(const Function& function); |
438 static bool AlwaysInline(const Function& function); | 437 static bool AlwaysInline(const Function& function); |
439 static bool PolymorphicTarget(const Function& function); | 438 static bool PolymorphicTarget(const Function& function); |
440 static const char* KindToCString(Kind kind); | 439 static const char* KindToCString(Kind kind); |
441 static void InitializeState(); | 440 static void InitializeState(); |
442 }; | 441 }; |
443 | 442 |
444 } // namespace dart | 443 } // namespace dart |
445 | 444 |
446 #endif // VM_METHOD_RECOGNIZER_H_ | 445 #endif // VM_METHOD_RECOGNIZER_H_ |
OLD | NEW |