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

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

Issue 2510783002: VM: Optimize RegExp.matchAsPrefix(...) by generating a sticky RegExp specialization. (Closed)
Patch Set: Done Created 4 years, 1 month 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/intrinsifier_x64.cc ('k') | runtime/vm/object.h » ('j') | 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 RUNTIME_VM_METHOD_RECOGNIZER_H_ 5 #ifndef RUNTIME_VM_METHOD_RECOGNIZER_H_
6 #define RUNTIME_VM_METHOD_RECOGNIZER_H_ 6 #define RUNTIME_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 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
159 V(_Double, get:isNaN, Double_getIsNaN, Bool, 0x0af8ebeb) \ 159 V(_Double, get:isNaN, Double_getIsNaN, Bool, 0x0af8ebeb) \
160 V(_Double, get:isInfinite, Double_getIsInfinite, Bool, 0x0f79e289) \ 160 V(_Double, get:isInfinite, Double_getIsInfinite, Bool, 0x0f79e289) \
161 V(_Double, get:isNegative, Double_getIsNegative, Bool, 0x3a58ff36) \ 161 V(_Double, get:isNegative, Double_getIsNegative, Bool, 0x3a58ff36) \
162 V(_Double, _mulFromInteger, Double_mulFromInteger, Double, 0x330e9a36) \ 162 V(_Double, _mulFromInteger, Double_mulFromInteger, Double, 0x330e9a36) \
163 V(_Double, .fromInteger, DoubleFromInteger, Double, 0x7ef45843) \ 163 V(_Double, .fromInteger, DoubleFromInteger, Double, 0x7ef45843) \
164 V(_List, []=, ObjectArraySetIndexed, Dynamic, 0x34d2c72c) \ 164 V(_List, []=, ObjectArraySetIndexed, Dynamic, 0x34d2c72c) \
165 V(_GrowableList, .withData, GrowableArray_Allocate, GrowableObjectArray, \ 165 V(_GrowableList, .withData, GrowableArray_Allocate, GrowableObjectArray, \
166 0x25a786de) \ 166 0x25a786de) \
167 V(_GrowableList, add, GrowableArray_add, Dynamic, 0x0d1358ed) \ 167 V(_GrowableList, add, GrowableArray_add, Dynamic, 0x0d1358ed) \
168 V(_RegExp, _ExecuteMatch, RegExp_ExecuteMatch, Dynamic, 0x6036d7fa) \ 168 V(_RegExp, _ExecuteMatch, RegExp_ExecuteMatch, Dynamic, 0x6036d7fa) \
169 V(_RegExp, _ExecuteMatchSticky, RegExp_ExecuteMatchSticky, Dynamic, \
170 0x6036d7fa) \
169 V(Object, ==, ObjectEquals, Bool, 0x11662ed8) \ 171 V(Object, ==, ObjectEquals, Bool, 0x11662ed8) \
170 V(Object, get:runtimeType, ObjectRuntimeType, Type, 0x00e7c26b) \ 172 V(Object, get:runtimeType, ObjectRuntimeType, Type, 0x00e7c26b) \
171 V(Object, _haveSameRuntimeType, ObjectHaveSameRuntimeType, Bool, 0x72aad7e2) \ 173 V(Object, _haveSameRuntimeType, ObjectHaveSameRuntimeType, Bool, 0x72aad7e2) \
172 V(_StringBase, get:hashCode, String_getHashCode, Smi, 0x78c2eb88) \ 174 V(_StringBase, get:hashCode, String_getHashCode, Smi, 0x78c2eb88) \
173 V(_StringBase, get:isEmpty, StringBaseIsEmpty, Bool, 0x74c21fca) \ 175 V(_StringBase, get:isEmpty, StringBaseIsEmpty, Bool, 0x74c21fca) \
174 V(_StringBase, _substringMatches, StringBaseSubstringMatches, Bool, \ 176 V(_StringBase, _substringMatches, StringBaseSubstringMatches, Bool, \
175 0x2f851deb) \ 177 0x2f851deb) \
176 V(_StringBase, [], StringBaseCharAt, Dynamic, 0x2cf92c45) \ 178 V(_StringBase, [], StringBaseCharAt, Dynamic, 0x2cf92c45) \
177 V(_OneByteString, get:hashCode, OneByteString_getHashCode, Smi, 0x78c2eb88) \ 179 V(_OneByteString, get:hashCode, OneByteString_getHashCode, Smi, 0x78c2eb88) \
178 V(_OneByteString, _substringUncheckedNative, \ 180 V(_OneByteString, _substringUncheckedNative, \
(...skipping 380 matching lines...) Expand 10 before | Expand all | Expand 10 after
559 // Class that recognizes factories and returns corresponding result cid. 561 // Class that recognizes factories and returns corresponding result cid.
560 class FactoryRecognizer : public AllStatic { 562 class FactoryRecognizer : public AllStatic {
561 public: 563 public:
562 // Return kDynamicCid if factory is not recognized. 564 // Return kDynamicCid if factory is not recognized.
563 static intptr_t ResultCid(const Function& factory); 565 static intptr_t ResultCid(const Function& factory);
564 }; 566 };
565 567
566 } // namespace dart 568 } // namespace dart
567 569
568 #endif // RUNTIME_VM_METHOD_RECOGNIZER_H_ 570 #endif // RUNTIME_VM_METHOD_RECOGNIZER_H_
OLDNEW
« no previous file with comments | « runtime/vm/intrinsifier_x64.cc ('k') | runtime/vm/object.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698