Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(273)

Side by Side Diff: runtime/vm/method_recognizer.h

Issue 1824023002: VM: Fix a couple of issues in the AOT optimizer, add fast path smi multiply. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: updated inlining of numeric operators Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « runtime/vm/intermediate_language_x64.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 405 matching lines...) Expand 10 before | Expand all | Expand 10 after
416 // A list of core function that should never be inlined. 416 // A list of core function that should never be inlined.
417 #define INLINE_BLACK_LIST(V) \ 417 #define INLINE_BLACK_LIST(V) \
418 V(_Bigint, _lsh, Bigint_lsh, 834311957) \ 418 V(_Bigint, _lsh, Bigint_lsh, 834311957) \
419 V(_Bigint, _rsh, Bigint_rsh, 333337658) \ 419 V(_Bigint, _rsh, Bigint_rsh, 333337658) \
420 V(_Bigint, _absAdd, Bigint_absAdd, 473436659) \ 420 V(_Bigint, _absAdd, Bigint_absAdd, 473436659) \
421 V(_Bigint, _absSub, Bigint_absSub, 1018678324) \ 421 V(_Bigint, _absSub, Bigint_absSub, 1018678324) \
422 V(_Bigint, _mulAdd, Bigint_mulAdd, 571005736) \ 422 V(_Bigint, _mulAdd, Bigint_mulAdd, 571005736) \
423 V(_Bigint, _sqrAdd, Bigint_sqrAdd, 372896038) \ 423 V(_Bigint, _sqrAdd, Bigint_sqrAdd, 372896038) \
424 V(_Bigint, _estQuotientDigit, Bigint_estQuotientDigit, 540033329) \ 424 V(_Bigint, _estQuotientDigit, Bigint_estQuotientDigit, 540033329) \
425 V(_Montgomery, _mulMod, Montgomery_mulMod, 118781828) \ 425 V(_Montgomery, _mulMod, Montgomery_mulMod, 118781828) \
426 V(_Double, >, Double_greaterThan, 1413076759) \
427 V(_Double, >=, Double_greaterEqualThan, 1815180096) \
428 V(_Double, <, Double_lessThan, 652059836) \
429 V(_Double, <=, Double_lessEqualThan, 512138528) \
430 V(_Double, ==, Double_equal, 752327620) \
431 V(_Double, +, Double_add, 854024064) \
432 V(_Double, -, Double_sub, 685132889) \
433 V(_Double, *, Double_mul, 542254390) \
434 V(_Double, /, Double_div, 1145710768) \
435 V(_IntegerImplementation, +, Integer_add, 364498398) \
436 V(_IntegerImplementation, -, Integer_sub, 1682674911) \
437 V(_IntegerImplementation, *, Integer_mul, 1651115456) \
438 V(_IntegerImplementation, ~/, Integer_truncDivide, 108494012) \
439 V(_IntegerImplementation, unary-, Integer_negate, 1507648892) \
440 V(_IntegerImplementation, &, Integer_bitAnd, 286231290) \
441 V(_IntegerImplementation, |, Integer_bitOr, 1111108792) \
442 V(_IntegerImplementation, ^, Integer_bitXor, 1884808537) \
443 V(_IntegerImplementation, >, Integer_greaterThan, 293890061) \
444 V(_IntegerImplementation, ==, Integer_equal, 4489308) \
445 V(_IntegerImplementation, <, Integer_lessThan, 652059836) \
446 V(_IntegerImplementation, <=, Integer_lessEqualThan, 512138528) \
447 V(_IntegerImplementation, >=, Integer_greaterEqualThan, 1815180096) \
448 V(_IntegerImplementation, <<, Integer_shl, 293751452) \
449 V(_IntegerImplementation, >>, Integer_sar, 125091101) \
426 450
427 // A list of core functions that internally dispatch based on received id. 451 // A list of core functions that internally dispatch based on received id.
428 #define POLYMORPHIC_TARGET_LIST(V) \ 452 #define POLYMORPHIC_TARGET_LIST(V) \
429 V(_StringBase, [], StringBaseCharAt, 754527301) \ 453 V(_StringBase, [], StringBaseCharAt, 754527301) \
430 V(_StringBase, codeUnitAt, StringBaseCodeUnitAt, 1436590579) \ 454 V(_StringBase, codeUnitAt, StringBaseCodeUnitAt, 1436590579) \
431 V(_TypedList, _getInt8, ByteArrayBaseGetInt8, 187609847) \ 455 V(_TypedList, _getInt8, ByteArrayBaseGetInt8, 187609847) \
432 V(_TypedList, _getUint8, ByteArrayBaseGetUint8, 1826086346) \ 456 V(_TypedList, _getUint8, ByteArrayBaseGetUint8, 1826086346) \
433 V(_TypedList, _getInt16, ByteArrayBaseGetInt16, 1174755987) \ 457 V(_TypedList, _getInt16, ByteArrayBaseGetInt16, 1174755987) \
434 V(_TypedList, _getUint16, ByteArrayBaseGetUint16, 1936358273) \ 458 V(_TypedList, _getUint16, ByteArrayBaseGetUint16, 1936358273) \
435 V(_TypedList, _getInt32, ByteArrayBaseGetInt32, 1123951931) \ 459 V(_TypedList, _getInt32, ByteArrayBaseGetInt32, 1123951931) \
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
507 // Class that recognizes factories and returns corresponding result cid. 531 // Class that recognizes factories and returns corresponding result cid.
508 class FactoryRecognizer : public AllStatic { 532 class FactoryRecognizer : public AllStatic {
509 public: 533 public:
510 // Return kDynamicCid if factory is not recognized. 534 // Return kDynamicCid if factory is not recognized.
511 static intptr_t ResultCid(const Function& factory); 535 static intptr_t ResultCid(const Function& factory);
512 }; 536 };
513 537
514 } // namespace dart 538 } // namespace dart
515 539
516 #endif // VM_METHOD_RECOGNIZER_H_ 540 #endif // VM_METHOD_RECOGNIZER_H_
OLDNEW
« no previous file with comments | « runtime/vm/intermediate_language_x64.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698