| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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_INTERMEDIATE_LANGUAGE_H_ | 5 #ifndef VM_INTERMEDIATE_LANGUAGE_H_ |
| 6 #define VM_INTERMEDIATE_LANGUAGE_H_ | 6 #define VM_INTERMEDIATE_LANGUAGE_H_ |
| 7 | 7 |
| 8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
| 9 #include "vm/ast.h" | 9 #include "vm/ast.h" |
| 10 #include "vm/growable_array.h" | 10 #include "vm/growable_array.h" |
| (...skipping 20 matching lines...) Expand all Loading... |
| 31 class LocalVariable; | 31 class LocalVariable; |
| 32 class ParsedFunction; | 32 class ParsedFunction; |
| 33 class Range; | 33 class Range; |
| 34 | 34 |
| 35 | 35 |
| 36 // TODO(srdjan): Unify with INTRINSIC_LIST. | 36 // TODO(srdjan): Unify with INTRINSIC_LIST. |
| 37 // (class-name, function-name, recognized enum, fingerprint). | 37 // (class-name, function-name, recognized enum, fingerprint). |
| 38 // See intrinsifier for fingerprint computation. | 38 // See intrinsifier for fingerprint computation. |
| 39 #define RECOGNIZED_LIST(V) \ | 39 #define RECOGNIZED_LIST(V) \ |
| 40 V(::, identical, ObjectIdentical, 496869842) \ | 40 V(::, identical, ObjectIdentical, 496869842) \ |
| 41 V(Object, ==, ObjectEquals, 1068471689) \ | 41 V(Object, ==, ObjectEquals, 695995403) \ |
| 42 V(Object, Object., ObjectConstructor, 1058615085) \ | 42 V(Object, Object., ObjectConstructor, 1058674667) \ |
| 43 V(Object, get:_cid, ObjectCid, 1498751301) \ | 43 V(Object, get:_cid, ObjectCid, 1498810883) \ |
| 44 V(_List, get:length, ObjectArrayLength, 215183186) \ | 44 V(_List, get:length, ObjectArrayLength, 215242768) \ |
| 45 V(_ImmutableList, get:length, ImmutableArrayLength, 578762861) \ | 45 V(_ImmutableList, get:length, ImmutableArrayLength, 578822443) \ |
| 46 V(_TypedList, get:length, TypedDataLength, 26646119) \ | 46 V(_TypedList, get:length, TypedDataLength, 26705701) \ |
| 47 V(_TypedList, _getInt8, ByteArrayBaseGetInt8, 272598802) \ | 47 V(_TypedList, _getInt8, ByteArrayBaseGetInt8, 272598802) \ |
| 48 V(_TypedList, _getUint8, ByteArrayBaseGetUint8, 831354841) \ | 48 V(_TypedList, _getUint8, ByteArrayBaseGetUint8, 831354841) \ |
| 49 V(_TypedList, _getInt16, ByteArrayBaseGetInt16, 1832126257) \ | 49 V(_TypedList, _getInt16, ByteArrayBaseGetInt16, 1832126257) \ |
| 50 V(_TypedList, _getUint16, ByteArrayBaseGetUint16, 1762714698) \ | 50 V(_TypedList, _getUint16, ByteArrayBaseGetUint16, 1762714698) \ |
| 51 V(_TypedList, _getInt32, ByteArrayBaseGetInt32, 48785449) \ | 51 V(_TypedList, _getInt32, ByteArrayBaseGetInt32, 48785449) \ |
| 52 V(_TypedList, _getUint32, ByteArrayBaseGetUint32, 1392579206) \ | 52 V(_TypedList, _getUint32, ByteArrayBaseGetUint32, 1392579206) \ |
| 53 V(_TypedList, _getFloat32, ByteArrayBaseGetFloat32, 185163470) \ | 53 V(_TypedList, _getFloat32, ByteArrayBaseGetFloat32, 185163470) \ |
| 54 V(_TypedList, _getFloat64, ByteArrayBaseGetFloat64, 1356392173) \ | 54 V(_TypedList, _getFloat64, ByteArrayBaseGetFloat64, 1356392173) \ |
| 55 V(_TypedList, _getFloat32x4, ByteArrayBaseGetFloat32x4, 1239681356) \ | 55 V(_TypedList, _getFloat32x4, ByteArrayBaseGetFloat32x4, 1239681356) \ |
| 56 V(_TypedList, _getInt32x4, ByteArrayBaseGetInt32x4, 163795162) \ | 56 V(_TypedList, _getInt32x4, ByteArrayBaseGetInt32x4, 163795162) \ |
| 57 V(_TypedList, _setInt8, ByteArrayBaseSetInt8, 1793798234) \ | 57 V(_TypedList, _setInt8, ByteArrayBaseSetInt8, 347379164) \ |
| 58 V(_TypedList, _setUint8, ByteArrayBaseSetUint8, 67253374) \ | 58 V(_TypedList, _setUint8, ByteArrayBaseSetUint8, 768317952) \ |
| 59 V(_TypedList, _setInt16, ByteArrayBaseSetInt16, 10467750) \ | 59 V(_TypedList, _setInt16, ByteArrayBaseSetInt16, 711532328) \ |
| 60 V(_TypedList, _setUint16, ByteArrayBaseSetUint16, 1596986894) \ | 60 V(_TypedList, _setUint16, ByteArrayBaseSetUint16, 150567824) \ |
| 61 V(_TypedList, _setInt32, ByteArrayBaseSetInt32, 868037529) \ | 61 V(_TypedList, _setInt32, ByteArrayBaseSetInt32, 1569102107) \ |
| 62 V(_TypedList, _setUint32, ByteArrayBaseSetUint32, 1776345006) \ | 62 V(_TypedList, _setUint32, ByteArrayBaseSetUint32, 329925936) \ |
| 63 V(_TypedList, _setFloat32, ByteArrayBaseSetFloat32, 1807927533) \ | 63 V(_TypedList, _setFloat32, ByteArrayBaseSetFloat32, 361508463) \ |
| 64 V(_TypedList, _setFloat64, ByteArrayBaseSetFloat64, 399659907) \ | 64 V(_TypedList, _setFloat64, ByteArrayBaseSetFloat64, 1100724485) \ |
| 65 V(_TypedList, _setFloat32x4, ByteArrayBaseSetFloat32x4, 1612092224) \ | 65 V(_TypedList, _setFloat32x4, ByteArrayBaseSetFloat32x4, 165673154) \ |
| 66 V(_TypedList, _setInt32x4, ByteArrayBaseSetInt32x4, 74799321) \ | 66 V(_TypedList, _setInt32x4, ByteArrayBaseSetInt32x4, 775863899) \ |
| 67 V(_GrowableList, get:length, GrowableArrayLength, 1654255033) \ | 67 V(_GrowableList, get:length, GrowableArrayLength, 1654314615) \ |
| 68 V(_GrowableList, get:_capacity, GrowableArrayCapacity, 817119794) \ | 68 V(_GrowableList, get:_capacity, GrowableArrayCapacity, 817179376) \ |
| 69 V(_GrowableList, _setData, GrowableArraySetData, 970836644) \ | 69 V(_GrowableList, _setData, GrowableArraySetData, 161490018) \ |
| 70 V(_GrowableList, _setLength, GrowableArraySetLength, 823005129) \ | 70 V(_GrowableList, _setLength, GrowableArraySetLength, 13658503) \ |
| 71 V(_StringBase, get:length, StringBaseLength, 1483549854) \ | 71 V(_StringBase, get:length, StringBaseLength, 1483609436) \ |
| 72 V(_StringBase, get:isEmpty, StringBaseIsEmpty, 1599468763) \ | 72 V(_StringBase, get:isEmpty, StringBaseIsEmpty, 891223769) \ |
| 73 V(_StringBase, codeUnitAt, StringBaseCodeUnitAt, 1958436584) \ | 73 V(_StringBase, codeUnitAt, StringBaseCodeUnitAt, 1958436584) \ |
| 74 V(_StringBase, [], StringBaseCharAt, 585372763) \ | 74 V(_StringBase, [], StringBaseCharAt, 1923509785) \ |
| 75 V(_StringBase, _interpolate, StringBaseInterpolate, 2013078843) \ | 75 V(_StringBase, _interpolate, StringBaseInterpolate, 243135171) \ |
| 76 V(_OneByteString, _setAt, OneByteStringSetAt, 658941003) \ | 76 V(_OneByteString, _setAt, OneByteStringSetAt, 1360005581) \ |
| 77 V(_IntegerImplementation, toDouble, IntegerToDouble, 1947355341) \ | 77 V(_IntegerImplementation, toDouble, IntegerToDouble, 1818069007) \ |
| 78 V(_IntegerImplementation, _leftShiftWithMask32, IntegerLeftShiftWithMask32, \ | 78 V(_IntegerImplementation, _leftShiftWithMask32, IntegerLeftShiftWithMask32, \ |
| 79 2095943661) \ | 79 2095943661) \ |
| 80 V(_Double, toInt, DoubleToInteger, 1328149975) \ | 80 V(_Double, toInt, DoubleToInteger, 1328149975) \ |
| 81 V(_Double, truncateToDouble, DoubleTruncate, 615732263) \ | 81 V(_Double, truncateToDouble, DoubleTruncate, 615732263) \ |
| 82 V(_Double, roundToDouble, DoubleRound, 622146406) \ | 82 V(_Double, roundToDouble, DoubleRound, 622146406) \ |
| 83 V(_Double, floorToDouble, DoubleFloor, 1614014643) \ | 83 V(_Double, floorToDouble, DoubleFloor, 1614014643) \ |
| 84 V(_Double, ceilToDouble, DoubleCeil, 277859570) \ | 84 V(_Double, ceilToDouble, DoubleCeil, 277859570) \ |
| 85 V(_Double, _modulo, DoubleMod, 1443289156) \ | 85 V(_Double, _modulo, DoubleMod, 1443289156) \ |
| 86 V(::, sqrt, MathSqrt, 465520247) \ | 86 V(::, sqrt, MathSqrt, 465520247) \ |
| 87 V(::, sin, MathSin, 730107143) \ | 87 V(::, sin, MathSin, 730107143) \ |
| 88 V(::, cos, MathCos, 1282146521) \ | 88 V(::, cos, MathCos, 1282146521) \ |
| 89 V(::, min, MathMin, 1022567780) \ | 89 V(::, min, MathMin, 1554754212) \ |
| 90 V(::, max, MathMax, 612058870) \ | 90 V(::, max, MathMax, 1367045238) \ |
| 91 V(::, _doublePow, MathDoublePow, 1591032382) \ | 91 V(::, _doublePow, MathDoublePow, 1316755064) \ |
| 92 V(Float32x4, Float32x4., Float32x4Constructor, 1314950569) \ | 92 V(Float32x4, Float32x4., Float32x4Constructor, 225029739) \ |
| 93 V(Float32x4, Float32x4.zero, Float32x4Zero, 1432281809) \ | 93 V(Float32x4, Float32x4.zero, Float32x4Zero, 1118078867) \ |
| 94 V(Float32x4, Float32x4.splat, Float32x4Splat, 1148280442) \ | 94 V(Float32x4, Float32x4.splat, Float32x4Splat, 1172331128) \ |
| 95 V(Float32x4, Float32x4.fromInt32x4Bits, Float32x4FromInt32x4Bits, \ | 95 V(Float32x4, Float32x4.fromInt32x4Bits, Float32x4FromInt32x4Bits, \ |
| 96 872145194) \ | 96 896195880) \ |
| 97 V(_Float32x4, shuffle, Float32x4Shuffle, 1178727105) \ | 97 V(_Float32x4, shuffle, Float32x4Shuffle, 1178727105) \ |
| 98 V(_Float32x4, shuffleMix, Float32x4ShuffleMix, 927956119) \ | 98 V(_Float32x4, shuffleMix, Float32x4ShuffleMix, 927956119) \ |
| 99 V(_Float32x4, get:x, Float32x4ShuffleX, 1351747629) \ | 99 V(_Float32x4, get:x, Float32x4ShuffleX, 1351807211) \ |
| 100 V(_Float32x4, get:y, Float32x4ShuffleY, 217416201) \ | 100 V(_Float32x4, get:y, Float32x4ShuffleY, 217475783) \ |
| 101 V(_Float32x4, get:z, Float32x4ShuffleZ, 2144953512) \ | 101 V(_Float32x4, get:z, Float32x4ShuffleZ, 2145013094) \ |
| 102 V(_Float32x4, get:w, Float32x4ShuffleW, 1447728910) \ | 102 V(_Float32x4, get:w, Float32x4ShuffleW, 1447788492) \ |
| 103 V(_Float32x4, get:signMask, Float32x4GetSignMask, 1198879138) \ | 103 V(_Float32x4, get:signMask, Float32x4GetSignMask, 1198938720) \ |
| 104 V(_Float32x4, _cmpequal, Float32x4Equal, 1944929844) \ | 104 V(_Float32x4, _cmpequal, Float32x4Equal, 1944929844) \ |
| 105 V(_Float32x4, _cmpgt, Float32x4GreaterThan, 499965951) \ | 105 V(_Float32x4, _cmpgt, Float32x4GreaterThan, 499965951) \ |
| 106 V(_Float32x4, _cmpgte, Float32x4GreaterThanOrEqual, 1003006845) \ | 106 V(_Float32x4, _cmpgte, Float32x4GreaterThanOrEqual, 1003006845) \ |
| 107 V(_Float32x4, _cmplt, Float32x4LessThan, 747070271) \ | 107 V(_Float32x4, _cmplt, Float32x4LessThan, 747070271) \ |
| 108 V(_Float32x4, _cmplte, Float32x4LessThanOrEqual, 2008368570) \ | 108 V(_Float32x4, _cmplte, Float32x4LessThanOrEqual, 2008368570) \ |
| 109 V(_Float32x4, _cmpnequal, Float32x4NotEqual, 1038562565) \ | 109 V(_Float32x4, _cmpnequal, Float32x4NotEqual, 1038562565) \ |
| 110 V(_Float32x4, _min, Float32x4Min, 1166664658) \ | 110 V(_Float32x4, _min, Float32x4Min, 1166664658) \ |
| 111 V(_Float32x4, _max, Float32x4Max, 343968921) \ | 111 V(_Float32x4, _max, Float32x4Max, 343968921) \ |
| 112 V(_Float32x4, _scale, Float32x4Scale, 803505531) \ | 112 V(_Float32x4, _scale, Float32x4Scale, 803505531) \ |
| 113 V(_Float32x4, _sqrt, Float32x4Sqrt, 2092250151) \ | 113 V(_Float32x4, _sqrt, Float32x4Sqrt, 2092250151) \ |
| 114 V(_Float32x4, _reciprocalSqrt, Float32x4ReciprocalSqrt, 965252704) \ | 114 V(_Float32x4, _reciprocalSqrt, Float32x4ReciprocalSqrt, 965252704) \ |
| 115 V(_Float32x4, _reciprocal, Float32x4Reciprocal, 1262202915) \ | 115 V(_Float32x4, _reciprocal, Float32x4Reciprocal, 1262202915) \ |
| 116 V(_Float32x4, _negate, Float32x4Negate, 1203192635) \ | 116 V(_Float32x4, _negate, Float32x4Negate, 1203192635) \ |
| 117 V(_Float32x4, _abs, Float32x4Absolute, 386324188) \ | 117 V(_Float32x4, _abs, Float32x4Absolute, 386324188) \ |
| 118 V(_Float32x4, _clamp, Float32x4Clamp, 1454612345) \ | 118 V(_Float32x4, _clamp, Float32x4Clamp, 1454612345) \ |
| 119 V(_Float32x4, withX, Float32x4WithX, 795284225) \ | 119 V(_Float32x4, withX, Float32x4WithX, 795284225) \ |
| 120 V(_Float32x4, withY, Float32x4WithY, 1806065938) \ | 120 V(_Float32x4, withY, Float32x4WithY, 1806065938) \ |
| 121 V(_Float32x4, withZ, Float32x4WithZ, 320659034) \ | 121 V(_Float32x4, withZ, Float32x4WithZ, 320659034) \ |
| 122 V(_Float32x4, withW, Float32x4WithW, 1108437255) \ | 122 V(_Float32x4, withW, Float32x4WithW, 1108437255) \ |
| 123 V(Int32x4, Int32x4.bool, Int32x4BoolConstructor, 295910141) \ | 123 V(Int32x4, Int32x4.bool, Int32x4BoolConstructor, 80026303) \ |
| 124 V(Int32x4, Int32x4.fromFloat32x4Bits, Int32x4FromFloat32x4Bits, \ | 124 V(Int32x4, Int32x4.fromFloat32x4Bits, Int32x4FromFloat32x4Bits, \ |
| 125 893850947) \ | 125 917901633) \ |
| 126 V(_Int32x4, get:flagX, Int32x4GetFlagX, 729265594) \ | 126 V(_Int32x4, get:flagX, Int32x4GetFlagX, 729325176) \ |
| 127 V(_Int32x4, get:flagY, Int32x4GetFlagY, 430870640) \ | 127 V(_Int32x4, get:flagY, Int32x4GetFlagY, 430930222) \ |
| 128 V(_Int32x4, get:flagZ, Int32x4GetFlagZ, 1981106287) \ | 128 V(_Int32x4, get:flagZ, Int32x4GetFlagZ, 1981165869) \ |
| 129 V(_Int32x4, get:flagW, Int32x4GetFlagW, 629385890) \ | 129 V(_Int32x4, get:flagW, Int32x4GetFlagW, 629445472) \ |
| 130 V(_Int32x4, get:signMask, Int32x4GetSignMask, 1598817537) \ | 130 V(_Int32x4, get:signMask, Int32x4GetSignMask, 1598877119) \ |
| 131 V(_Int32x4, shuffle, Int32x4Shuffle, 599391160) \ | 131 V(_Int32x4, shuffle, Int32x4Shuffle, 599391160) \ |
| 132 V(_Int32x4, shuffleMix, Int32x4ShuffleMix, 1491641197) \ | 132 V(_Int32x4, shuffleMix, Int32x4ShuffleMix, 1491641197) \ |
| 133 V(_Int32x4, select, Int32x4Select, 194269493) \ | 133 V(_Int32x4, select, Int32x4Select, 1532406515) \ |
| 134 V(_Int32x4, withFlagX, Int32x4WithFlagX, 63248661) \ | 134 V(_Int32x4, withFlagX, Int32x4WithFlagX, 63248661) \ |
| 135 V(_Int32x4, withFlagY, Int32x4WithFlagY, 1498755850) \ | 135 V(_Int32x4, withFlagY, Int32x4WithFlagY, 1498755850) \ |
| 136 V(_Int32x4, withFlagZ, Int32x4WithFlagZ, 457856832) \ | 136 V(_Int32x4, withFlagZ, Int32x4WithFlagZ, 457856832) \ |
| 137 V(_Int32x4, withFlagW, Int32x4WithFlagW, 690638779) \ | 137 V(_Int32x4, withFlagW, Int32x4WithFlagW, 690638779) \ |
| 138 V(_List, [], ObjectArrayGetIndexed, 675155875) \ | 138 V(_List, [], ObjectArrayGetIndexed, 2013292897) \ |
| 139 V(_List, []=, ObjectArraySetIndexed, 1228569706) \ | 139 V(_List, []=, ObjectArraySetIndexed, 40316074) \ |
| 140 V(_ImmutableList, [], ImmutableArrayGetIndexed, 1768793932) \ | 140 V(_ImmutableList, [], ImmutableArrayGetIndexed, 959447306) \ |
| 141 V(_GrowableList, [], GrowableArrayGetIndexed, 1282104248) \ | 141 V(_GrowableList, [], GrowableArrayGetIndexed, 472757622) \ |
| 142 V(_GrowableList, []=, GrowableArraySetIndexed, 807019110) \ | 142 V(_GrowableList, []=, GrowableArraySetIndexed, 1766249126) \ |
| 143 V(_Float32Array, [], Float32ArrayGetIndexed, 1461569776) \ | 143 V(_Float32Array, [], Float32ArrayGetIndexed, 1934136302) \ |
| 144 V(_Float32Array, []=, Float32ArraySetIndexed, 1318757370) \ | 144 V(_Float32Array, []=, Float32ArraySetIndexed, 1645961720) \ |
| 145 V(_Float64Array, [], Float64ArrayGetIndexed, 1107401598) \ | 145 V(_Float64Array, [], Float64ArrayGetIndexed, 1579968124) \ |
| 146 V(_Float64Array, []=, Float64ArraySetIndexed, 377873481) \ | 146 V(_Float64Array, []=, Float64ArraySetIndexed, 705077831) \ |
| 147 V(_Int8Array, [], Int8ArrayGetIndexed, 436208801) \ | 147 V(_Int8Array, [], Int8ArrayGetIndexed, 908775327) \ |
| 148 V(_Int8Array, []=, Int8ArraySetIndexed, 1257450859) \ | 148 V(_Int8Array, []=, Int8ArraySetIndexed, 1573963437) \ |
| 149 V(_Uint8Array, [], Uint8ArrayGetIndexed, 738731818) \ | 149 V(_Uint8Array, [], Uint8ArrayGetIndexed, 1211298344) \ |
| 150 V(_Uint8Array, []=, Uint8ArraySetIndexed, 1414236073) \ | 150 V(_Uint8Array, []=, Uint8ArraySetIndexed, 1730748651) \ |
| 151 V(_Uint8ClampedArray, [], Uint8ClampedArrayGetIndexed, 1529176866) \ | 151 V(_Uint8ClampedArray, [], Uint8ClampedArrayGetIndexed, 2001743392) \ |
| 152 V(_Uint8ClampedArray, []=, Uint8ClampedArraySetIndexed, 1902969517) \ | 152 V(_Uint8ClampedArray, []=, Uint8ClampedArraySetIndexed, 71998447) \ |
| 153 V(_ExternalUint8Array, [], ExternalUint8ArrayGetIndexed, 2067666479) \ | 153 V(_ExternalUint8Array, [], ExternalUint8ArrayGetIndexed, 392749357) \ |
| 154 V(_ExternalUint8Array, []=, ExternalUint8ArraySetIndexed, 745187964) \ | 154 V(_ExternalUint8Array, []=, ExternalUint8ArraySetIndexed, 1061700542) \ |
| 155 V(_ExternalUint8ClampedArray, [], ExternalUint8ClampedArrayGetIndexed, \ | 155 V(_ExternalUint8ClampedArray, [], ExternalUint8ClampedArrayGetIndexed, \ |
| 156 2068189358) \ | 156 393272236) \ |
| 157 V(_ExternalUint8ClampedArray, []=, ExternalUint8ClampedArraySetIndexed, \ | 157 V(_ExternalUint8ClampedArray, []=, ExternalUint8ClampedArraySetIndexed, \ |
| 158 1251233632) \ | 158 1567746210) \ |
| 159 V(_Int16Array, [], Int16ArrayGetIndexed, 1428082706) \ | 159 V(_Int16Array, [], Int16ArrayGetIndexed, 1900649232) \ |
| 160 V(_Int16Array, []=, Int16ArraySetIndexed, 266849900) \ | 160 V(_Int16Array, []=, Int16ArraySetIndexed, 583362478) \ |
| 161 V(_Uint16Array, [], Uint16ArrayGetIndexed, 1050460407) \ | 161 V(_Uint16Array, [], Uint16ArrayGetIndexed, 1523026933) \ |
| 162 V(_Uint16Array, []=, Uint16ArraySetIndexed, 1895506641) \ | 162 V(_Uint16Array, []=, Uint16ArraySetIndexed, 64535571) \ |
| 163 V(_Int32Array, [], Int32ArrayGetIndexed, 1023604903) \ | 163 V(_Int32Array, [], Int32ArrayGetIndexed, 1496171429) \ |
| 164 V(_Int32Array, []=, Int32ArraySetIndexed, 599753059) \ | 164 V(_Int32Array, []=, Int32ArraySetIndexed, 916265637) \ |
| 165 V(_Uint32Array, [], Uint32ArrayGetIndexed, 1658205989) \ | 165 V(_Uint32Array, [], Uint32ArrayGetIndexed, 2130772515) \ |
| 166 V(_Uint32Array, []=, Uint32ArraySetIndexed, 1065461643) \ | 166 V(_Uint32Array, []=, Uint32ArraySetIndexed, 1381974221) \ |
| 167 V(_Float32x4Array, [], Float32x4ArrayGetIndexed, 2137410088) \ | 167 V(_Float32x4Array, [], Float32x4ArrayGetIndexed, 462492966) \ |
| 168 V(_Float32x4Array, []=, Float32x4ArraySetIndexed, 1583018506) \ | 168 V(_Float32x4Array, []=, Float32x4ArraySetIndexed, 1910222856) \ |
| 169 V(_Int32x4Array, [], Int32x4ArrayGetIndexed, 1911863146) \ | 169 V(_Int32x4Array, [], Int32x4ArrayGetIndexed, 236946024) \ |
| 170 V(_Int32x4Array, []=, Int32x4ArraySetIndexed, 973572811) \ | 170 V(_Int32x4Array, []=, Int32x4ArraySetIndexed, 1300777161) \ |
| 171 | 171 |
| 172 | 172 |
| 173 // A list of core function that should always be inlined. | 173 // A list of core function that should always be inlined. |
| 174 #define INLINE_WHITE_LIST(V) \ | 174 #define INLINE_WHITE_LIST(V) \ |
| 175 V(_List, get:length, ObjectArrayLength, 215183186) \ | 175 V(_List, get:length, ObjectArrayLength, 215242768) \ |
| 176 V(_ImmutableList, get:length, ImmutableArrayLength, 578762861) \ | 176 V(_ImmutableList, get:length, ImmutableArrayLength, 578822443) \ |
| 177 V(_TypedList, get:length, TypedDataLength, 26646119) \ | 177 V(_TypedList, get:length, TypedDataLength, 26705701) \ |
| 178 V(_GrowableList, get:length, GrowableArrayLength, 1654255033) \ | 178 V(_GrowableList, get:length, GrowableArrayLength, 1654314615) \ |
| 179 V(_StringBase, get:length, StringBaseLength, 1483549854) \ | 179 V(_StringBase, get:length, StringBaseLength, 1483609436) \ |
| 180 V(ListIterator, moveNext, ListIteratorMoveNext, 881367324) \ | 180 V(ListIterator, moveNext, ListIteratorMoveNext, 314757150) \ |
| 181 V(_GrowableList, get:iterator, GrowableArrayIterator, 1155241039) \ | 181 V(_GrowableList, get:iterator, GrowableArrayIterator, 855468307) \ |
| 182 V(_GrowableList, forEach, GrowableArrayForEach, 195359970) \ | 182 V(_GrowableList, forEach, GrowableArrayForEach, 1530186140) \ |
| 183 | 183 |
| 184 // A list of core functions that internally dispatch based on received id. | 184 // A list of core functions that internally dispatch based on received id. |
| 185 #define POLYMORPHIC_TARGET_LIST(V) \ | 185 #define POLYMORPHIC_TARGET_LIST(V) \ |
| 186 V(_TypedList, _getInt8, ByteArrayBaseGetInt8, 272598802) \ | 186 V(_TypedList, _getInt8, ByteArrayBaseGetInt8, 272598802) \ |
| 187 V(_TypedList, _getUint8, ByteArrayBaseGetUint8, 831354841) \ | 187 V(_TypedList, _getUint8, ByteArrayBaseGetUint8, 831354841) \ |
| 188 V(_TypedList, _getInt16, ByteArrayBaseGetInt16, 1832126257) \ | 188 V(_TypedList, _getInt16, ByteArrayBaseGetInt16, 1832126257) \ |
| 189 V(_TypedList, _getUint16, ByteArrayBaseGetUint16, 1762714698) \ | 189 V(_TypedList, _getUint16, ByteArrayBaseGetUint16, 1762714698) \ |
| 190 V(_TypedList, _getInt32, ByteArrayBaseGetInt32, 48785449) \ | 190 V(_TypedList, _getInt32, ByteArrayBaseGetInt32, 48785449) \ |
| 191 V(_TypedList, _getUint32, ByteArrayBaseGetUint32, 1392579206) \ | 191 V(_TypedList, _getUint32, ByteArrayBaseGetUint32, 1392579206) \ |
| 192 V(_TypedList, _getFloat32, ByteArrayBaseGetFloat32, 185163470) \ | 192 V(_TypedList, _getFloat32, ByteArrayBaseGetFloat32, 185163470) \ |
| (...skipping 6738 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6931 ForwardInstructionIterator* current_iterator_; | 6931 ForwardInstructionIterator* current_iterator_; |
| 6932 | 6932 |
| 6933 private: | 6933 private: |
| 6934 DISALLOW_COPY_AND_ASSIGN(FlowGraphVisitor); | 6934 DISALLOW_COPY_AND_ASSIGN(FlowGraphVisitor); |
| 6935 }; | 6935 }; |
| 6936 | 6936 |
| 6937 | 6937 |
| 6938 } // namespace dart | 6938 } // namespace dart |
| 6939 | 6939 |
| 6940 #endif // VM_INTERMEDIATE_LANGUAGE_H_ | 6940 #endif // VM_INTERMEDIATE_LANGUAGE_H_ |
| OLD | NEW |