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

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

Issue 1347203005: VM: Intrinsify some common SIMD methods to speed up precompiled SIMD code. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: added helper to create unboxing instructions Created 5 years, 2 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/intrinsifier.cc ('k') | runtime/vm/method_recognizer.cc » ('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 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 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 V(::, min, MathMin, 478627534) \ 57 V(::, min, MathMin, 478627534) \
58 V(::, max, MathMax, 212291192) \ 58 V(::, max, MathMax, 212291192) \
59 V(::, _doublePow, MathDoublePow, 1286501289) \ 59 V(::, _doublePow, MathDoublePow, 1286501289) \
60 V(Float32x4, Float32x4., Float32x4Constructor, 1413513587) \ 60 V(Float32x4, Float32x4., Float32x4Constructor, 1413513587) \
61 V(Float32x4, Float32x4.zero, Float32x4Zero, 865663495) \ 61 V(Float32x4, Float32x4.zero, Float32x4Zero, 865663495) \
62 V(Float32x4, Float32x4.splat, Float32x4Splat, 964312836) \ 62 V(Float32x4, Float32x4.splat, Float32x4Splat, 964312836) \
63 V(Float32x4, Float32x4.fromInt32x4Bits, Float32x4FromInt32x4Bits, 688177588) \ 63 V(Float32x4, Float32x4.fromInt32x4Bits, Float32x4FromInt32x4Bits, 688177588) \
64 V(Float32x4, Float32x4.fromFloat64x2, Float32x4FromFloat64x2, 1327692716) \ 64 V(Float32x4, Float32x4.fromFloat64x2, Float32x4FromFloat64x2, 1327692716) \
65 V(_Float32x4, shuffle, Float32x4Shuffle, 1636488139) \ 65 V(_Float32x4, shuffle, Float32x4Shuffle, 1636488139) \
66 V(_Float32x4, shuffleMix, Float32x4ShuffleMix, 654814229) \ 66 V(_Float32x4, shuffleMix, Float32x4ShuffleMix, 654814229) \
67 V(_Float32x4, get:x, Float32x4ShuffleX, 384969722) \
68 V(_Float32x4, get:y, Float32x4ShuffleY, 1398121942) \
69 V(_Float32x4, get:z, Float32x4ShuffleZ, 1178175605) \
70 V(_Float32x4, get:w, Float32x4ShuffleW, 480951003) \
71 V(_Float32x4, get:signMask, Float32x4GetSignMask, 630880675) \ 67 V(_Float32x4, get:signMask, Float32x4GetSignMask, 630880675) \
72 V(_Float32x4, _cmpequal, Float32x4Equal, 571062952) \ 68 V(_Float32x4, _cmpequal, Float32x4Equal, 571062952) \
73 V(_Float32x4, _cmpgt, Float32x4GreaterThan, 1613543295) \ 69 V(_Float32x4, _cmpgt, Float32x4GreaterThan, 1613543295) \
74 V(_Float32x4, _cmpgte, Float32x4GreaterThanOrEqual, 589402909) \ 70 V(_Float32x4, _cmpgte, Float32x4GreaterThanOrEqual, 589402909) \
75 V(_Float32x4, _cmplt, Float32x4LessThan, 1502332656) \ 71 V(_Float32x4, _cmplt, Float32x4LessThan, 1502332656) \
76 V(_Float32x4, _cmplte, Float32x4LessThanOrEqual, 1069848031) \ 72 V(_Float32x4, _cmplte, Float32x4LessThanOrEqual, 1069848031) \
77 V(_Float32x4, _cmpnequal, Float32x4NotEqual, 1334574472) \ 73 V(_Float32x4, _cmpnequal, Float32x4NotEqual, 1334574472) \
78 V(_Float32x4, _min, Float32x4Min, 2036349551) \ 74 V(_Float32x4, _min, Float32x4Min, 2036349551) \
79 V(_Float32x4, _max, Float32x4Max, 571688115) \ 75 V(_Float32x4, _max, Float32x4Max, 571688115) \
80 V(_Float32x4, _scale, Float32x4Scale, 1311297761) \ 76 V(_Float32x4, _scale, Float32x4Scale, 1311297761) \
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 V(_Float64x2Array, ., TypedData_Float64x2Array_factory, 1699696799) \ 274 V(_Float64x2Array, ., TypedData_Float64x2Array_factory, 1699696799) \
279 275
280 #define GRAPH_TYPED_DATA_INTRINSICS_LIST(V) \ 276 #define GRAPH_TYPED_DATA_INTRINSICS_LIST(V) \
281 V(_Uint8Array, [], Uint8ArrayGetIndexed, 579862489) \ 277 V(_Uint8Array, [], Uint8ArrayGetIndexed, 579862489) \
282 V(_Uint8Array, []=, Uint8ArraySetIndexed, 447309008) \ 278 V(_Uint8Array, []=, Uint8ArraySetIndexed, 447309008) \
283 V(_ExternalUint8Array, [], ExternalUint8ArrayGetIndexed, 1293647140) \ 279 V(_ExternalUint8Array, [], ExternalUint8ArrayGetIndexed, 1293647140) \
284 V(_ExternalUint8Array, []=, ExternalUint8ArraySetIndexed, 1593599192) \ 280 V(_ExternalUint8Array, []=, ExternalUint8ArraySetIndexed, 1593599192) \
285 V(_Float64Array, []=, Float64ArraySetIndexed, 887301703) \ 281 V(_Float64Array, []=, Float64ArraySetIndexed, 887301703) \
286 V(_Float64Array, [], Float64ArrayGetIndexed, 1959896670) \ 282 V(_Float64Array, [], Float64ArrayGetIndexed, 1959896670) \
287 V(_TypedList, get:length, TypedDataLength, 522684521) \ 283 V(_TypedList, get:length, TypedDataLength, 522684521) \
284 V(_Float32x4, get:x, Float32x4ShuffleX, 384969722) \
285 V(_Float32x4, get:y, Float32x4ShuffleY, 1398121942) \
286 V(_Float32x4, get:z, Float32x4ShuffleZ, 1178175605) \
287 V(_Float32x4, get:w, Float32x4ShuffleW, 480951003) \
288 V(_Float32x4, _mul, Float32x4Mul, 1703784673) \
289 V(_Float32x4, _sub, Float32x4Sub, 1302598822) \
290 V(_Float32x4, _add, Float32x4Add, 182344215) \
288 291
289 #define GRAPH_CORE_INTRINSICS_LIST(V) \ 292 #define GRAPH_CORE_INTRINSICS_LIST(V) \
290 V(_List, get:length, ObjectArrayLength, 1181471893) \ 293 V(_List, get:length, ObjectArrayLength, 1181471893) \
291 V(_List, [], ObjectArrayGetIndexed, 1839430267) \ 294 V(_List, [], ObjectArrayGetIndexed, 1839430267) \
292 V(_ImmutableList, get:length, ImmutableArrayLength, 275036891) \ 295 V(_ImmutableList, get:length, ImmutableArrayLength, 275036891) \
293 V(_ImmutableList, [], ImmutableArrayGetIndexed, 886511484) \ 296 V(_ImmutableList, [], ImmutableArrayGetIndexed, 886511484) \
294 V(_GrowableList, get:length, GrowableArrayLength, 778624271) \ 297 V(_GrowableList, get:length, GrowableArrayLength, 778624271) \
295 V(_GrowableList, get:_capacity, GrowableArrayCapacity, 555259239) \ 298 V(_GrowableList, get:_capacity, GrowableArrayCapacity, 555259239) \
296 V(_GrowableList, _setData, GrowableArraySetData, 508234257) \ 299 V(_GrowableList, _setData, GrowableArraySetData, 508234257) \
297 V(_GrowableList, _setLength, GrowableArraySetLength, 618179695) \ 300 V(_GrowableList, _setLength, GrowableArraySetLength, 618179695) \
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
488 ASSERT(f.CheckSourceFingerprint(#p0 ", " #p1, fp)) 491 ASSERT(f.CheckSourceFingerprint(#p0 ", " #p1, fp))
489 492
490 #define CHECK_FINGERPRINT3(f, p0, p1, p2, fp) \ 493 #define CHECK_FINGERPRINT3(f, p0, p1, p2, fp) \
491 ASSERT(f.CheckSourceFingerprint(#p0 ", " #p1 ", " #p2, fp)) 494 ASSERT(f.CheckSourceFingerprint(#p0 ", " #p1 ", " #p2, fp))
492 #endif // defined(DART_NO_SNAPSHOT). 495 #endif // defined(DART_NO_SNAPSHOT).
493 496
494 497
495 } // namespace dart 498 } // namespace dart
496 499
497 #endif // VM_METHOD_RECOGNIZER_H_ 500 #endif // VM_METHOD_RECOGNIZER_H_
OLDNEW
« no previous file with comments | « runtime/vm/intrinsifier.cc ('k') | runtime/vm/method_recognizer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698