OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 V(CallKnownGlobal) \ | 67 V(CallKnownGlobal) \ |
68 V(CallNamed) \ | 68 V(CallNamed) \ |
69 V(CallNew) \ | 69 V(CallNew) \ |
70 V(CallRuntime) \ | 70 V(CallRuntime) \ |
71 V(CallStub) \ | 71 V(CallStub) \ |
72 V(CheckFunction) \ | 72 V(CheckFunction) \ |
73 V(CheckInstanceType) \ | 73 V(CheckInstanceType) \ |
74 V(CheckMap) \ | 74 V(CheckMap) \ |
75 V(CheckPrototypeMaps) \ | 75 V(CheckPrototypeMaps) \ |
76 V(CheckSmi) \ | 76 V(CheckSmi) \ |
| 77 V(ClassOfTest) \ |
| 78 V(ClassOfTestAndBranch) \ |
77 V(CmpID) \ | 79 V(CmpID) \ |
78 V(CmpIDAndBranch) \ | 80 V(CmpIDAndBranch) \ |
79 V(CmpJSObjectEq) \ | 81 V(CmpJSObjectEq) \ |
80 V(CmpJSObjectEqAndBranch) \ | 82 V(CmpJSObjectEqAndBranch) \ |
81 V(CmpMapAndBranch) \ | 83 V(CmpMapAndBranch) \ |
82 V(CmpT) \ | 84 V(CmpT) \ |
83 V(CmpTAndBranch) \ | 85 V(CmpTAndBranch) \ |
84 V(ConstantD) \ | 86 V(ConstantD) \ |
85 V(ConstantI) \ | 87 V(ConstantI) \ |
86 V(ConstantT) \ | 88 V(ConstantT) \ |
87 V(Context) \ | 89 V(Context) \ |
88 V(DeleteProperty) \ | 90 V(DeleteProperty) \ |
89 V(Deoptimize) \ | 91 V(Deoptimize) \ |
90 V(DivI) \ | 92 V(DivI) \ |
91 V(DoubleToI) \ | 93 V(DoubleToI) \ |
| 94 V(ExternalArrayLength) \ |
| 95 V(FixedArrayLength) \ |
92 V(FunctionLiteral) \ | 96 V(FunctionLiteral) \ |
93 V(Gap) \ | 97 V(Gap) \ |
94 V(GlobalObject) \ | 98 V(GlobalObject) \ |
95 V(GlobalReceiver) \ | 99 V(GlobalReceiver) \ |
96 V(Goto) \ | 100 V(Goto) \ |
97 V(FixedArrayLength) \ | 101 V(HasInstanceType) \ |
| 102 V(HasInstanceTypeAndBranch) \ |
| 103 V(HasCachedArrayIndex) \ |
| 104 V(HasCachedArrayIndexAndBranch) \ |
98 V(InstanceOf) \ | 105 V(InstanceOf) \ |
99 V(InstanceOfAndBranch) \ | 106 V(InstanceOfAndBranch) \ |
100 V(InstanceOfKnownGlobal) \ | 107 V(InstanceOfKnownGlobal) \ |
101 V(Integer32ToDouble) \ | 108 V(Integer32ToDouble) \ |
102 V(IsNull) \ | 109 V(IsNull) \ |
103 V(IsNullAndBranch) \ | 110 V(IsNullAndBranch) \ |
104 V(IsObject) \ | 111 V(IsObject) \ |
105 V(IsObjectAndBranch) \ | 112 V(IsObjectAndBranch) \ |
106 V(IsSmi) \ | 113 V(IsSmi) \ |
107 V(IsSmiAndBranch) \ | 114 V(IsSmiAndBranch) \ |
108 V(JSArrayLength) \ | 115 V(JSArrayLength) \ |
109 V(HasInstanceType) \ | |
110 V(HasInstanceTypeAndBranch) \ | |
111 V(HasCachedArrayIndex) \ | |
112 V(HasCachedArrayIndexAndBranch) \ | |
113 V(ClassOfTest) \ | |
114 V(ClassOfTestAndBranch) \ | |
115 V(Label) \ | 116 V(Label) \ |
116 V(LazyBailout) \ | 117 V(LazyBailout) \ |
117 V(LoadContextSlot) \ | 118 V(LoadContextSlot) \ |
118 V(LoadElements) \ | 119 V(LoadElements) \ |
| 120 V(LoadExternalArrayPointer) \ |
119 V(LoadGlobal) \ | 121 V(LoadGlobal) \ |
120 V(LoadKeyedFastElement) \ | 122 V(LoadKeyedFastElement) \ |
121 V(LoadKeyedGeneric) \ | 123 V(LoadKeyedGeneric) \ |
122 V(LoadNamedField) \ | 124 V(LoadNamedField) \ |
123 V(LoadNamedGeneric) \ | 125 V(LoadNamedGeneric) \ |
124 V(LoadFunctionPrototype) \ | 126 V(LoadFunctionPrototype) \ |
125 V(LoadPixelArrayElement) \ | 127 V(LoadPixelArrayElement) \ |
126 V(LoadPixelArrayExternalPointer) \ | |
127 V(ModI) \ | 128 V(ModI) \ |
128 V(MulI) \ | 129 V(MulI) \ |
129 V(NumberTagD) \ | 130 V(NumberTagD) \ |
130 V(NumberTagI) \ | 131 V(NumberTagI) \ |
131 V(NumberUntagD) \ | 132 V(NumberUntagD) \ |
132 V(ObjectLiteral) \ | 133 V(ObjectLiteral) \ |
133 V(OsrEntry) \ | 134 V(OsrEntry) \ |
134 V(Parameter) \ | 135 V(Parameter) \ |
135 V(PixelArrayLength) \ | |
136 V(Power) \ | 136 V(Power) \ |
137 V(PushArgument) \ | 137 V(PushArgument) \ |
138 V(RegExpLiteral) \ | 138 V(RegExpLiteral) \ |
139 V(Return) \ | 139 V(Return) \ |
140 V(ShiftI) \ | 140 V(ShiftI) \ |
141 V(SmiTag) \ | 141 V(SmiTag) \ |
142 V(SmiUntag) \ | 142 V(SmiUntag) \ |
143 V(StackCheck) \ | 143 V(StackCheck) \ |
144 V(StoreGlobal) \ | 144 V(StoreGlobal) \ |
145 V(StoreKeyedFastElement) \ | 145 V(StoreKeyedFastElement) \ |
(...skipping 831 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
977 public: | 977 public: |
978 explicit LJSArrayLength(LOperand* value) { | 978 explicit LJSArrayLength(LOperand* value) { |
979 inputs_[0] = value; | 979 inputs_[0] = value; |
980 } | 980 } |
981 | 981 |
982 DECLARE_CONCRETE_INSTRUCTION(JSArrayLength, "js-array-length") | 982 DECLARE_CONCRETE_INSTRUCTION(JSArrayLength, "js-array-length") |
983 DECLARE_HYDROGEN_ACCESSOR(JSArrayLength) | 983 DECLARE_HYDROGEN_ACCESSOR(JSArrayLength) |
984 }; | 984 }; |
985 | 985 |
986 | 986 |
987 class LPixelArrayLength: public LTemplateInstruction<1, 1, 0> { | 987 class LExternalArrayLength: public LTemplateInstruction<1, 1, 0> { |
988 public: | 988 public: |
989 explicit LPixelArrayLength(LOperand* value) { | 989 explicit LExternalArrayLength(LOperand* value) { |
990 inputs_[0] = value; | 990 inputs_[0] = value; |
991 } | 991 } |
992 | 992 |
993 DECLARE_CONCRETE_INSTRUCTION(PixelArrayLength, "pixel-array-length") | 993 DECLARE_CONCRETE_INSTRUCTION(ExternalArrayLength, "external-array-length") |
994 DECLARE_HYDROGEN_ACCESSOR(PixelArrayLength) | 994 DECLARE_HYDROGEN_ACCESSOR(ExternalArrayLength) |
995 }; | 995 }; |
996 | 996 |
997 | 997 |
998 class LFixedArrayLength: public LTemplateInstruction<1, 1, 0> { | 998 class LFixedArrayLength: public LTemplateInstruction<1, 1, 0> { |
999 public: | 999 public: |
1000 explicit LFixedArrayLength(LOperand* value) { | 1000 explicit LFixedArrayLength(LOperand* value) { |
1001 inputs_[0] = value; | 1001 inputs_[0] = value; |
1002 } | 1002 } |
1003 | 1003 |
1004 DECLARE_CONCRETE_INSTRUCTION(FixedArrayLength, "fixed-array-length") | 1004 DECLARE_CONCRETE_INSTRUCTION(FixedArrayLength, "fixed-array-length") |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1149 class LLoadElements: public LTemplateInstruction<1, 1, 0> { | 1149 class LLoadElements: public LTemplateInstruction<1, 1, 0> { |
1150 public: | 1150 public: |
1151 explicit LLoadElements(LOperand* object) { | 1151 explicit LLoadElements(LOperand* object) { |
1152 inputs_[0] = object; | 1152 inputs_[0] = object; |
1153 } | 1153 } |
1154 | 1154 |
1155 DECLARE_CONCRETE_INSTRUCTION(LoadElements, "load-elements") | 1155 DECLARE_CONCRETE_INSTRUCTION(LoadElements, "load-elements") |
1156 }; | 1156 }; |
1157 | 1157 |
1158 | 1158 |
1159 class LLoadPixelArrayExternalPointer: public LTemplateInstruction<1, 1, 0> { | 1159 class LLoadExternalArrayPointer: public LTemplateInstruction<1, 1, 0> { |
1160 public: | 1160 public: |
1161 explicit LLoadPixelArrayExternalPointer(LOperand* object) { | 1161 explicit LLoadExternalArrayPointer(LOperand* object) { |
1162 inputs_[0] = object; | 1162 inputs_[0] = object; |
1163 } | 1163 } |
1164 | 1164 |
1165 DECLARE_CONCRETE_INSTRUCTION(LoadPixelArrayExternalPointer, | 1165 DECLARE_CONCRETE_INSTRUCTION(LoadExternalArrayPointer, |
1166 "load-pixel-array-external-pointer") | 1166 "load-external-array-pointer") |
1167 }; | 1167 }; |
1168 | 1168 |
1169 | 1169 |
1170 class LLoadKeyedFastElement: public LTemplateInstruction<1, 2, 0> { | 1170 class LLoadKeyedFastElement: public LTemplateInstruction<1, 2, 0> { |
1171 public: | 1171 public: |
1172 LLoadKeyedFastElement(LOperand* elements, LOperand* key) { | 1172 LLoadKeyedFastElement(LOperand* elements, LOperand* key) { |
1173 inputs_[0] = elements; | 1173 inputs_[0] = elements; |
1174 inputs_[1] = key; | 1174 inputs_[1] = key; |
1175 } | 1175 } |
1176 | 1176 |
(...skipping 821 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1998 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 1998 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
1999 }; | 1999 }; |
2000 | 2000 |
2001 #undef DECLARE_HYDROGEN_ACCESSOR | 2001 #undef DECLARE_HYDROGEN_ACCESSOR |
2002 #undef DECLARE_INSTRUCTION | 2002 #undef DECLARE_INSTRUCTION |
2003 #undef DECLARE_CONCRETE_INSTRUCTION | 2003 #undef DECLARE_CONCRETE_INSTRUCTION |
2004 | 2004 |
2005 } } // namespace v8::int | 2005 } } // namespace v8::int |
2006 | 2006 |
2007 #endif // V8_X64_LITHIUM_X64_H_ | 2007 #endif // V8_X64_LITHIUM_X64_H_ |
OLD | NEW |