OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_BAILOUT_REASON_H_ | 5 #ifndef V8_BAILOUT_REASON_H_ |
6 #define V8_BAILOUT_REASON_H_ | 6 #define V8_BAILOUT_REASON_H_ |
7 | 7 |
8 namespace v8 { | 8 namespace v8 { |
9 namespace internal { | 9 namespace internal { |
10 | 10 |
(...skipping 11 matching lines...) Expand all Loading... |
22 V(kArrayBoilerplateCreationFailed, "Array boilerplate creation failed") \ | 22 V(kArrayBoilerplateCreationFailed, "Array boilerplate creation failed") \ |
23 V(kArrayIndexConstantValueTooBig, "Array index constant value too big") \ | 23 V(kArrayIndexConstantValueTooBig, "Array index constant value too big") \ |
24 V(kAssignmentToArguments, "Assignment to arguments") \ | 24 V(kAssignmentToArguments, "Assignment to arguments") \ |
25 V(kAssignmentToLetVariableBeforeInitialization, \ | 25 V(kAssignmentToLetVariableBeforeInitialization, \ |
26 "Assignment to let variable before initialization") \ | 26 "Assignment to let variable before initialization") \ |
27 V(kAssignmentToLOOKUPVariable, "Assignment to LOOKUP variable") \ | 27 V(kAssignmentToLOOKUPVariable, "Assignment to LOOKUP variable") \ |
28 V(kAssignmentToParameterFunctionUsesArgumentsObject, \ | 28 V(kAssignmentToParameterFunctionUsesArgumentsObject, \ |
29 "Assignment to parameter, function uses arguments object") \ | 29 "Assignment to parameter, function uses arguments object") \ |
30 V(kAssignmentToParameterInArgumentsObject, \ | 30 V(kAssignmentToParameterInArgumentsObject, \ |
31 "Assignment to parameter in arguments object") \ | 31 "Assignment to parameter in arguments object") \ |
32 V(kAttemptToUseUndefinedCache, "Attempt to use undefined cache") \ | |
33 V(kBadValueContextForArgumentsObjectValue, \ | 32 V(kBadValueContextForArgumentsObjectValue, \ |
34 "Bad value context for arguments object value") \ | 33 "Bad value context for arguments object value") \ |
35 V(kBadValueContextForArgumentsValue, \ | 34 V(kBadValueContextForArgumentsValue, \ |
36 "Bad value context for arguments value") \ | 35 "Bad value context for arguments value") \ |
37 V(kBailedOutDueToDependencyChange, "Bailed out due to dependency change") \ | 36 V(kBailedOutDueToDependencyChange, "Bailed out due to dependency change") \ |
38 V(kBailoutWasNotPrepared, "Bailout was not prepared") \ | 37 V(kBailoutWasNotPrepared, "Bailout was not prepared") \ |
39 V(kBothRegistersWereSmisInSelectNonSmi, \ | 38 V(kBothRegistersWereSmisInSelectNonSmi, \ |
40 "Both registers were smis in SelectNonSmi") \ | 39 "Both registers were smis in SelectNonSmi") \ |
41 V(kCallToAJavaScriptRuntimeFunction, \ | 40 V(kCallToAJavaScriptRuntimeFunction, \ |
42 "Call to a JavaScript runtime function") \ | 41 "Call to a JavaScript runtime function") \ |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 V(kHydrogenFilter, "Optimization disabled by filter") \ | 97 V(kHydrogenFilter, "Optimization disabled by filter") \ |
99 V(kImportDeclaration, "Import declaration") \ | 98 V(kImportDeclaration, "Import declaration") \ |
100 V(kIndexIsNegative, "Index is negative") \ | 99 V(kIndexIsNegative, "Index is negative") \ |
101 V(kIndexIsTooLarge, "Index is too large") \ | 100 V(kIndexIsTooLarge, "Index is too large") \ |
102 V(kInlinedRuntimeFunctionFastOneByteArrayJoin, \ | 101 V(kInlinedRuntimeFunctionFastOneByteArrayJoin, \ |
103 "Inlined runtime function: FastOneByteArrayJoin") \ | 102 "Inlined runtime function: FastOneByteArrayJoin") \ |
104 V(kInliningBailedOut, "Inlining bailed out") \ | 103 V(kInliningBailedOut, "Inlining bailed out") \ |
105 V(kInputGPRIsExpectedToHaveUpper32Cleared, \ | 104 V(kInputGPRIsExpectedToHaveUpper32Cleared, \ |
106 "Input GPR is expected to have upper32 cleared") \ | 105 "Input GPR is expected to have upper32 cleared") \ |
107 V(kInputStringTooLong, "Input string too long") \ | 106 V(kInputStringTooLong, "Input string too long") \ |
108 V(kInstanceofStubUnexpectedCallSiteCacheCheck, \ | |
109 "InstanceofStub unexpected call site cache (check)") \ | |
110 V(kInstanceofStubUnexpectedCallSiteCacheCmp1, \ | |
111 "InstanceofStub unexpected call site cache (cmp 1)") \ | |
112 V(kInstanceofStubUnexpectedCallSiteCacheCmp2, \ | |
113 "InstanceofStub unexpected call site cache (cmp 2)") \ | |
114 V(kInstanceofStubUnexpectedCallSiteCacheMov, \ | |
115 "InstanceofStub unexpected call site cache (mov)") \ | |
116 V(kInteger32ToSmiFieldWritingToNonSmiLocation, \ | 107 V(kInteger32ToSmiFieldWritingToNonSmiLocation, \ |
117 "Integer32ToSmiField writing to non-smi location") \ | 108 "Integer32ToSmiField writing to non-smi location") \ |
118 V(kInvalidCaptureReferenced, "Invalid capture referenced") \ | 109 V(kInvalidCaptureReferenced, "Invalid capture referenced") \ |
119 V(kInvalidElementsKindForInternalArrayOrInternalPackedArray, \ | 110 V(kInvalidElementsKindForInternalArrayOrInternalPackedArray, \ |
120 "Invalid ElementsKind for InternalArray or InternalPackedArray") \ | 111 "Invalid ElementsKind for InternalArray or InternalPackedArray") \ |
121 V(kInvalidFullCodegenState, "invalid full-codegen state") \ | 112 V(kInvalidFullCodegenState, "invalid full-codegen state") \ |
122 V(kInvalidHandleScopeLevel, "Invalid HandleScope level") \ | 113 V(kInvalidHandleScopeLevel, "Invalid HandleScope level") \ |
123 V(kInvalidLeftHandSideInAssignment, "Invalid left-hand side in assignment") \ | 114 V(kInvalidLeftHandSideInAssignment, "Invalid left-hand side in assignment") \ |
124 V(kInvalidLhsInCompoundAssignment, "Invalid lhs in compound assignment") \ | 115 V(kInvalidLhsInCompoundAssignment, "Invalid lhs in compound assignment") \ |
125 V(kInvalidLhsInCountOperation, "Invalid lhs in count operation") \ | 116 V(kInvalidLhsInCountOperation, "Invalid lhs in count operation") \ |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
176 V(kPossibleDirectCallToEval, "Possible direct call to eval") \ | 167 V(kPossibleDirectCallToEval, "Possible direct call to eval") \ |
177 V(kReceivedInvalidReturnAddress, "Received invalid return address") \ | 168 V(kReceivedInvalidReturnAddress, "Received invalid return address") \ |
178 V(kReferenceToAVariableWhichRequiresDynamicLookup, \ | 169 V(kReferenceToAVariableWhichRequiresDynamicLookup, \ |
179 "Reference to a variable which requires dynamic lookup") \ | 170 "Reference to a variable which requires dynamic lookup") \ |
180 V(kReferenceToGlobalLexicalVariable, "Reference to global lexical variable") \ | 171 V(kReferenceToGlobalLexicalVariable, "Reference to global lexical variable") \ |
181 V(kReferenceToUninitializedVariable, "Reference to uninitialized variable") \ | 172 V(kReferenceToUninitializedVariable, "Reference to uninitialized variable") \ |
182 V(kRegisterDidNotMatchExpectedRoot, "Register did not match expected root") \ | 173 V(kRegisterDidNotMatchExpectedRoot, "Register did not match expected root") \ |
183 V(kRegisterWasClobbered, "Register was clobbered") \ | 174 V(kRegisterWasClobbered, "Register was clobbered") \ |
184 V(kRememberedSetPointerInNewSpace, "Remembered set pointer is in new space") \ | 175 V(kRememberedSetPointerInNewSpace, "Remembered set pointer is in new space") \ |
185 V(kReturnAddressNotFoundInFrame, "Return address not found in frame") \ | 176 V(kReturnAddressNotFoundInFrame, "Return address not found in frame") \ |
186 V(kScriptContext, "Allocation of script context") \ | |
187 V(kSmiAdditionOverflow, "Smi addition overflow") \ | 177 V(kSmiAdditionOverflow, "Smi addition overflow") \ |
188 V(kSmiSubtractionOverflow, "Smi subtraction overflow") \ | 178 V(kSmiSubtractionOverflow, "Smi subtraction overflow") \ |
189 V(kSpread, "Spread in array literal") \ | 179 V(kSpread, "Spread in array literal") \ |
190 V(kStackAccessBelowStackPointer, "Stack access below stack pointer") \ | 180 V(kStackAccessBelowStackPointer, "Stack access below stack pointer") \ |
191 V(kStackFrameTypesMustMatch, "Stack frame types must match") \ | 181 V(kStackFrameTypesMustMatch, "Stack frame types must match") \ |
192 V(kSuperReference, "Super reference") \ | 182 V(kSuperReference, "Super reference") \ |
193 V(kTheCurrentStackPointerIsBelowCsp, \ | 183 V(kTheCurrentStackPointerIsBelowCsp, \ |
194 "The current stack pointer is below csp") \ | 184 "The current stack pointer is below csp") \ |
195 V(kTheInstructionShouldBeALis, "The instruction should be a lis") \ | |
196 V(kTheInstructionShouldBeALui, "The instruction should be a lui") \ | |
197 V(kTheInstructionShouldBeAnOri, "The instruction should be an ori") \ | |
198 V(kTheInstructionShouldBeAnOris, "The instruction should be an oris") \ | |
199 V(kTheInstructionShouldBeALi, "The instruction should be a li") \ | |
200 V(kTheInstructionShouldBeASldi, "The instruction should be a sldi") \ | |
201 V(kTheInstructionToPatchShouldBeAnLdrLiteral, \ | |
202 "The instruction to patch should be a ldr literal") \ | |
203 V(kTheInstructionToPatchShouldBeALis, \ | |
204 "The instruction to patch should be a lis") \ | |
205 V(kTheInstructionToPatchShouldBeALui, \ | |
206 "The instruction to patch should be a lui") \ | |
207 V(kTheInstructionToPatchShouldBeAnOri, \ | |
208 "The instruction to patch should be an ori") \ | |
209 V(kTheSourceAndDestinationAreTheSame, \ | 185 V(kTheSourceAndDestinationAreTheSame, \ |
210 "The source and destination are the same") \ | 186 "The source and destination are the same") \ |
211 V(kTheStackWasCorruptedByMacroAssemblerCall, \ | 187 V(kTheStackWasCorruptedByMacroAssemblerCall, \ |
212 "The stack was corrupted by MacroAssembler::Call()") \ | 188 "The stack was corrupted by MacroAssembler::Call()") \ |
213 V(kTooManyParametersLocals, "Too many parameters/locals") \ | 189 V(kTooManyParametersLocals, "Too many parameters/locals") \ |
214 V(kTooManyParameters, "Too many parameters") \ | 190 V(kTooManyParameters, "Too many parameters") \ |
215 V(kTooManySpillSlotsNeededForOSR, "Too many spill slots needed for OSR") \ | 191 V(kTooManySpillSlotsNeededForOSR, "Too many spill slots needed for OSR") \ |
216 V(kToOperand32UnsupportedImmediate, "ToOperand32 unsupported immediate.") \ | 192 V(kToOperand32UnsupportedImmediate, "ToOperand32 unsupported immediate.") \ |
217 V(kToOperandIsDoubleRegisterUnimplemented, \ | 193 V(kToOperandIsDoubleRegisterUnimplemented, \ |
218 "ToOperand IsDoubleRegister unimplemented") \ | 194 "ToOperand IsDoubleRegister unimplemented") \ |
219 V(kToOperandUnsupportedDoubleImmediate, \ | 195 V(kToOperandUnsupportedDoubleImmediate, \ |
220 "ToOperand Unsupported double immediate") \ | 196 "ToOperand Unsupported double immediate") \ |
221 V(kTryCatchStatement, "TryCatchStatement") \ | 197 V(kTryCatchStatement, "TryCatchStatement") \ |
222 V(kTryFinallyStatement, "TryFinallyStatement") \ | 198 V(kTryFinallyStatement, "TryFinallyStatement") \ |
223 V(kUnableToEncodeValueAsSmi, "Unable to encode value as smi") \ | |
224 V(kUnalignedAllocationInNewSpace, "Unaligned allocation in new space") \ | 199 V(kUnalignedAllocationInNewSpace, "Unaligned allocation in new space") \ |
225 V(kUnalignedCellInWriteBarrier, "Unaligned cell in write barrier") \ | 200 V(kUnalignedCellInWriteBarrier, "Unaligned cell in write barrier") \ |
226 V(kUnexpectedAllocationTop, "Unexpected allocation top") \ | 201 V(kUnexpectedAllocationTop, "Unexpected allocation top") \ |
227 V(kUnexpectedColorFound, "Unexpected color bit pattern found") \ | 202 V(kUnexpectedColorFound, "Unexpected color bit pattern found") \ |
228 V(kUnexpectedElementsKindInArrayConstructor, \ | 203 V(kUnexpectedElementsKindInArrayConstructor, \ |
229 "Unexpected ElementsKind in array constructor") \ | 204 "Unexpected ElementsKind in array constructor") \ |
230 V(kUnexpectedFallthroughFromCharCodeAtSlowCase, \ | 205 V(kUnexpectedFallthroughFromCharCodeAtSlowCase, \ |
231 "Unexpected fallthrough from CharCodeAt slow case") \ | 206 "Unexpected fallthrough from CharCodeAt slow case") \ |
232 V(kUnexpectedFallthroughFromCharFromCodeSlowCase, \ | 207 V(kUnexpectedFallthroughFromCharFromCodeSlowCase, \ |
233 "Unexpected fallthrough from CharFromCode slow case") \ | 208 "Unexpected fallthrough from CharFromCode slow case") \ |
(...skipping 14 matching lines...) Expand all Loading... |
248 V(kUnexpectedInitialMapForInternalArrayFunction, \ | 223 V(kUnexpectedInitialMapForInternalArrayFunction, \ |
249 "Unexpected initial map for InternalArray function") \ | 224 "Unexpected initial map for InternalArray function") \ |
250 V(kUnexpectedLevelAfterReturnFromApiCall, \ | 225 V(kUnexpectedLevelAfterReturnFromApiCall, \ |
251 "Unexpected level after return from api call") \ | 226 "Unexpected level after return from api call") \ |
252 V(kUnexpectedNegativeValue, "Unexpected negative value") \ | 227 V(kUnexpectedNegativeValue, "Unexpected negative value") \ |
253 V(kUnexpectedNumberOfPreAllocatedPropertyFields, \ | 228 V(kUnexpectedNumberOfPreAllocatedPropertyFields, \ |
254 "Unexpected number of pre-allocated property fields") \ | 229 "Unexpected number of pre-allocated property fields") \ |
255 V(kUnexpectedFPCRMode, "Unexpected FPCR mode.") \ | 230 V(kUnexpectedFPCRMode, "Unexpected FPCR mode.") \ |
256 V(kUnexpectedSmi, "Unexpected smi value") \ | 231 V(kUnexpectedSmi, "Unexpected smi value") \ |
257 V(kUnexpectedStackPointer, "The stack pointer is not the expected value") \ | 232 V(kUnexpectedStackPointer, "The stack pointer is not the expected value") \ |
258 V(kUnexpectedStringFunction, "Unexpected String function") \ | |
259 V(kUnexpectedStringType, "Unexpected string type") \ | 233 V(kUnexpectedStringType, "Unexpected string type") \ |
260 V(kUnexpectedStringWrapperInstanceSize, \ | |
261 "Unexpected string wrapper instance size") \ | |
262 V(kUnexpectedTypeForRegExpDataFixedArrayExpected, \ | 234 V(kUnexpectedTypeForRegExpDataFixedArrayExpected, \ |
263 "Unexpected type for RegExp data, FixedArray expected") \ | 235 "Unexpected type for RegExp data, FixedArray expected") \ |
264 V(kUnexpectedValue, "Unexpected value") \ | 236 V(kUnexpectedValue, "Unexpected value") \ |
265 V(kUnexpectedUnusedPropertiesOfStringWrapper, \ | |
266 "Unexpected unused properties of string wrapper") \ | |
267 V(kUnsupportedConstCompoundAssignment, \ | 237 V(kUnsupportedConstCompoundAssignment, \ |
268 "Unsupported const compound assignment") \ | 238 "Unsupported const compound assignment") \ |
269 V(kUnsupportedCountOperationWithConst, \ | 239 V(kUnsupportedCountOperationWithConst, \ |
270 "Unsupported count operation with const") \ | 240 "Unsupported count operation with const") \ |
271 V(kUnsupportedDoubleImmediate, "Unsupported double immediate") \ | 241 V(kUnsupportedDoubleImmediate, "Unsupported double immediate") \ |
272 V(kUnsupportedLetCompoundAssignment, "Unsupported let compound assignment") \ | 242 V(kUnsupportedLetCompoundAssignment, "Unsupported let compound assignment") \ |
273 V(kUnsupportedLookupSlotInDeclaration, \ | 243 V(kUnsupportedLookupSlotInDeclaration, \ |
274 "Unsupported lookup slot in declaration") \ | 244 "Unsupported lookup slot in declaration") \ |
275 V(kUnsupportedNonPrimitiveCompare, "Unsupported non-primitive compare") \ | 245 V(kUnsupportedNonPrimitiveCompare, "Unsupported non-primitive compare") \ |
276 V(kUnsupportedPhiUseOfArguments, "Unsupported phi use of arguments") \ | 246 V(kUnsupportedPhiUseOfArguments, "Unsupported phi use of arguments") \ |
(...skipping 18 matching lines...) Expand all Loading... |
295 }; | 265 }; |
296 #undef ERROR_MESSAGES_CONSTANTS | 266 #undef ERROR_MESSAGES_CONSTANTS |
297 | 267 |
298 | 268 |
299 const char* GetBailoutReason(BailoutReason reason); | 269 const char* GetBailoutReason(BailoutReason reason); |
300 | 270 |
301 } // namespace internal | 271 } // namespace internal |
302 } // namespace v8 | 272 } // namespace v8 |
303 | 273 |
304 #endif // V8_BAILOUT_REASON_H_ | 274 #endif // V8_BAILOUT_REASON_H_ |
OLD | NEW |