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

Side by Side Diff: src/objects.h

Issue 148293020: Merge experimental/a64 to bleeding_edge. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Remove ARM from OWNERS Created 6 years, 10 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 | Annotate | Revision Log
« no previous file with comments | « src/mips/simulator-mips.h ('k') | src/platform-linux.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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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 19 matching lines...) Expand all
30 30
31 #include "allocation.h" 31 #include "allocation.h"
32 #include "assert-scope.h" 32 #include "assert-scope.h"
33 #include "builtins.h" 33 #include "builtins.h"
34 #include "elements-kind.h" 34 #include "elements-kind.h"
35 #include "flags.h" 35 #include "flags.h"
36 #include "list.h" 36 #include "list.h"
37 #include "property-details.h" 37 #include "property-details.h"
38 #include "smart-pointers.h" 38 #include "smart-pointers.h"
39 #include "unicode-inl.h" 39 #include "unicode-inl.h"
40 #if V8_TARGET_ARCH_ARM 40 #if V8_TARGET_ARCH_A64
41 #include "a64/constants-a64.h"
42 #elif V8_TARGET_ARCH_ARM
41 #include "arm/constants-arm.h" 43 #include "arm/constants-arm.h"
42 #elif V8_TARGET_ARCH_MIPS 44 #elif V8_TARGET_ARCH_MIPS
43 #include "mips/constants-mips.h" 45 #include "mips/constants-mips.h"
44 #endif 46 #endif
45 #include "v8checks.h" 47 #include "v8checks.h"
46 #include "zone.h" 48 #include "zone.h"
47 49
48 50
49 // 51 //
50 // Most object types in the V8 JavaScript are described in this file. 52 // Most object types in the V8 JavaScript are described in this file.
(...skipping 1070 matching lines...) Expand 10 before | Expand all | Expand 10 after
1121 V(kBothRegistersWereSmisInSelectNonSmi, \ 1123 V(kBothRegistersWereSmisInSelectNonSmi, \
1122 "Both registers were smis in SelectNonSmi") \ 1124 "Both registers were smis in SelectNonSmi") \
1123 V(kCallToAJavaScriptRuntimeFunction, \ 1125 V(kCallToAJavaScriptRuntimeFunction, \
1124 "Call to a JavaScript runtime function") \ 1126 "Call to a JavaScript runtime function") \
1125 V(kCannotTranslatePositionInChangedArea, \ 1127 V(kCannotTranslatePositionInChangedArea, \
1126 "Cannot translate position in changed area") \ 1128 "Cannot translate position in changed area") \
1127 V(kCodeGenerationFailed, "Code generation failed") \ 1129 V(kCodeGenerationFailed, "Code generation failed") \
1128 V(kCodeObjectNotProperlyPatched, "Code object not properly patched") \ 1130 V(kCodeObjectNotProperlyPatched, "Code object not properly patched") \
1129 V(kCompoundAssignmentToLookupSlot, "Compound assignment to lookup slot") \ 1131 V(kCompoundAssignmentToLookupSlot, "Compound assignment to lookup slot") \
1130 V(kContextAllocatedArguments, "Context-allocated arguments") \ 1132 V(kContextAllocatedArguments, "Context-allocated arguments") \
1133 V(kCopyBuffersOverlap, "Copy buffers overlap") \
1134 V(kCouldNotGenerateZero, "Could not generate +0.0") \
1135 V(kCouldNotGenerateNegativeZero, "Could not generate -0.0") \
1131 V(kDebuggerIsActive, "Debugger is active") \ 1136 V(kDebuggerIsActive, "Debugger is active") \
1132 V(kDebuggerStatement, "DebuggerStatement") \ 1137 V(kDebuggerStatement, "DebuggerStatement") \
1133 V(kDeclarationInCatchContext, "Declaration in catch context") \ 1138 V(kDeclarationInCatchContext, "Declaration in catch context") \
1134 V(kDeclarationInWithContext, "Declaration in with context") \ 1139 V(kDeclarationInWithContext, "Declaration in with context") \
1135 V(kDefaultNaNModeNotSet, "Default NaN mode not set") \ 1140 V(kDefaultNaNModeNotSet, "Default NaN mode not set") \
1136 V(kDeleteWithGlobalVariable, "Delete with global variable") \ 1141 V(kDeleteWithGlobalVariable, "Delete with global variable") \
1137 V(kDeleteWithNonGlobalVariable, "Delete with non-global variable") \ 1142 V(kDeleteWithNonGlobalVariable, "Delete with non-global variable") \
1138 V(kDestinationOfCopyNotAligned, "Destination of copy not aligned") \ 1143 V(kDestinationOfCopyNotAligned, "Destination of copy not aligned") \
1139 V(kDontDeleteCellsCannotContainTheHole, \ 1144 V(kDontDeleteCellsCannotContainTheHole, \
1140 "DontDelete cells can't contain the hole") \ 1145 "DontDelete cells can't contain the hole") \
1141 V(kDoPushArgumentNotImplementedForDoubleType, \ 1146 V(kDoPushArgumentNotImplementedForDoubleType, \
1142 "DoPushArgument not implemented for double type") \ 1147 "DoPushArgument not implemented for double type") \
1148 V(kEliminatedBoundsCheckFailed, "Eliminated bounds check failed") \
1143 V(kEmitLoadRegisterUnsupportedDoubleImmediate, \ 1149 V(kEmitLoadRegisterUnsupportedDoubleImmediate, \
1144 "EmitLoadRegister: Unsupported double immediate") \ 1150 "EmitLoadRegister: Unsupported double immediate") \
1145 V(kEval, "eval") \ 1151 V(kEval, "eval") \
1146 V(kExpected0AsASmiSentinel, "Expected 0 as a Smi sentinel") \ 1152 V(kExpected0AsASmiSentinel, "Expected 0 as a Smi sentinel") \
1147 V(kExpectedAlignmentMarker, "expected alignment marker") \ 1153 V(kExpectedAlignmentMarker, "Expected alignment marker") \
1148 V(kExpectedAllocationSite, "expected allocation site") \ 1154 V(kExpectedAllocationSite, "Expected allocation site") \
1155 V(kExpectedFunctionObject, "Expected function object in register") \
1156 V(kExpectedHeapNumber, "Expected HeapNumber") \
1157 V(kExpectedNativeContext, "Expected native context") \
1158 V(kExpectedNonIdenticalObjects, "Expected non-identical objects") \
1159 V(kExpectedNonNullContext, "Expected non-null context") \
1160 V(kExpectedPositiveZero, "Expected +0.0") \
1161 V(kExpectedAllocationSiteInCell, \
1162 "Expected AllocationSite in property cell") \
1163 V(kExpectedFixedArrayInFeedbackVector, \
1164 "Expected fixed array in feedback vector") \
1149 V(kExpectedFixedArrayInRegisterA2, \ 1165 V(kExpectedFixedArrayInRegisterA2, \
1150 "Expected fixed array in register a2") \ 1166 "Expected fixed array in register a2") \
1151 V(kExpectedFixedArrayInRegisterEbx, \ 1167 V(kExpectedFixedArrayInRegisterEbx, \
1152 "Expected fixed array in register ebx") \ 1168 "Expected fixed array in register ebx") \
1153 V(kExpectedFixedArrayInRegisterR2, \ 1169 V(kExpectedFixedArrayInRegisterR2, \
1154 "Expected fixed array in register r2") \ 1170 "Expected fixed array in register r2") \
1155 V(kExpectedFixedArrayInRegisterRbx, \ 1171 V(kExpectedFixedArrayInRegisterRbx, \
1156 "Expected fixed array in register rbx") \ 1172 "Expected fixed array in register rbx") \
1173 V(kExpectedSmiOrHeapNumber, "Expected smi or HeapNumber") \
1157 V(kExpectingAlignmentForCopyBytes, \ 1174 V(kExpectingAlignmentForCopyBytes, \
1158 "Expecting alignment for CopyBytes") \ 1175 "Expecting alignment for CopyBytes") \
1159 V(kExportDeclaration, "Export declaration") \ 1176 V(kExportDeclaration, "Export declaration") \
1160 V(kExternalStringExpectedButNotFound, \ 1177 V(kExternalStringExpectedButNotFound, \
1161 "External string expected, but not found") \ 1178 "External string expected, but not found") \
1162 V(kFailedBailedOutLastTime, "Failed/bailed out last time") \ 1179 V(kFailedBailedOutLastTime, "Failed/bailed out last time") \
1163 V(kForInStatementIsNotFastCase, "ForInStatement is not fast case") \ 1180 V(kForInStatementIsNotFastCase, "ForInStatement is not fast case") \
1164 V(kForInStatementOptimizationIsDisabled, \ 1181 V(kForInStatementOptimizationIsDisabled, \
1165 "ForInStatement optimization is disabled") \ 1182 "ForInStatement optimization is disabled") \
1166 V(kForInStatementWithNonLocalEachVariable, \ 1183 V(kForInStatementWithNonLocalEachVariable, \
(...skipping 24 matching lines...) Expand all
1191 "Inlined runtime function: GeneratorThrow") \ 1208 "Inlined runtime function: GeneratorThrow") \
1192 V(kInlinedRuntimeFunctionGetFromCache, \ 1209 V(kInlinedRuntimeFunctionGetFromCache, \
1193 "Inlined runtime function: GetFromCache") \ 1210 "Inlined runtime function: GetFromCache") \
1194 V(kInlinedRuntimeFunctionIsNonNegativeSmi, \ 1211 V(kInlinedRuntimeFunctionIsNonNegativeSmi, \
1195 "Inlined runtime function: IsNonNegativeSmi") \ 1212 "Inlined runtime function: IsNonNegativeSmi") \
1196 V(kInlinedRuntimeFunctionIsStringWrapperSafeForDefaultValueOf, \ 1213 V(kInlinedRuntimeFunctionIsStringWrapperSafeForDefaultValueOf, \
1197 "Inlined runtime function: IsStringWrapperSafeForDefaultValueOf") \ 1214 "Inlined runtime function: IsStringWrapperSafeForDefaultValueOf") \
1198 V(kInliningBailedOut, "Inlining bailed out") \ 1215 V(kInliningBailedOut, "Inlining bailed out") \
1199 V(kInputGPRIsExpectedToHaveUpper32Cleared, \ 1216 V(kInputGPRIsExpectedToHaveUpper32Cleared, \
1200 "Input GPR is expected to have upper32 cleared") \ 1217 "Input GPR is expected to have upper32 cleared") \
1218 V(kInputStringTooLong, "Input string too long") \
1201 V(kInstanceofStubUnexpectedCallSiteCacheCheck, \ 1219 V(kInstanceofStubUnexpectedCallSiteCacheCheck, \
1202 "InstanceofStub unexpected call site cache (check)") \ 1220 "InstanceofStub unexpected call site cache (check)") \
1203 V(kInstanceofStubUnexpectedCallSiteCacheCmp1, \ 1221 V(kInstanceofStubUnexpectedCallSiteCacheCmp1, \
1204 "InstanceofStub unexpected call site cache (cmp 1)") \ 1222 "InstanceofStub unexpected call site cache (cmp 1)") \
1205 V(kInstanceofStubUnexpectedCallSiteCacheCmp2, \ 1223 V(kInstanceofStubUnexpectedCallSiteCacheCmp2, \
1206 "InstanceofStub unexpected call site cache (cmp 2)") \ 1224 "InstanceofStub unexpected call site cache (cmp 2)") \
1207 V(kInstanceofStubUnexpectedCallSiteCacheMov, \ 1225 V(kInstanceofStubUnexpectedCallSiteCacheMov, \
1208 "InstanceofStub unexpected call site cache (mov)") \ 1226 "InstanceofStub unexpected call site cache (mov)") \
1209 V(kInteger32ToSmiFieldWritingToNonSmiLocation, \ 1227 V(kInteger32ToSmiFieldWritingToNonSmiLocation, \
1210 "Integer32ToSmiField writing to non-smi location") \ 1228 "Integer32ToSmiField writing to non-smi location") \
1211 V(kInvalidCaptureReferenced, "Invalid capture referenced") \ 1229 V(kInvalidCaptureReferenced, "Invalid capture referenced") \
1212 V(kInvalidElementsKindForInternalArrayOrInternalPackedArray, \ 1230 V(kInvalidElementsKindForInternalArrayOrInternalPackedArray, \
1213 "Invalid ElementsKind for InternalArray or InternalPackedArray") \ 1231 "Invalid ElementsKind for InternalArray or InternalPackedArray") \
1232 V(kInvalidFullCodegenState, "invalid full-codegen state") \
1214 V(kInvalidHandleScopeLevel, "Invalid HandleScope level") \ 1233 V(kInvalidHandleScopeLevel, "Invalid HandleScope level") \
1215 V(kInvalidLeftHandSideInAssignment, "Invalid left-hand side in assignment") \ 1234 V(kInvalidLeftHandSideInAssignment, "Invalid left-hand side in assignment") \
1216 V(kInvalidLhsInCompoundAssignment, "Invalid lhs in compound assignment") \ 1235 V(kInvalidLhsInCompoundAssignment, "Invalid lhs in compound assignment") \
1217 V(kInvalidLhsInCountOperation, "Invalid lhs in count operation") \ 1236 V(kInvalidLhsInCountOperation, "Invalid lhs in count operation") \
1218 V(kInvalidMinLength, "Invalid min_length") \ 1237 V(kInvalidMinLength, "Invalid min_length") \
1219 V(kJSGlobalObjectNativeContextShouldBeANativeContext, \ 1238 V(kJSGlobalObjectNativeContextShouldBeANativeContext, \
1220 "JSGlobalObject::native_context should be a native context") \ 1239 "JSGlobalObject::native_context should be a native context") \
1221 V(kJSGlobalProxyContextShouldNotBeNull, \ 1240 V(kJSGlobalProxyContextShouldNotBeNull, \
1222 "JSGlobalProxy::context() should not be null") \ 1241 "JSGlobalProxy::context() should not be null") \
1223 V(kJSObjectWithFastElementsMapHasSlowElements, \ 1242 V(kJSObjectWithFastElementsMapHasSlowElements, \
1224 "JSObject with fast elements map has slow elements") \ 1243 "JSObject with fast elements map has slow elements") \
1225 V(kLetBindingReInitialization, "Let binding re-initialization") \ 1244 V(kLetBindingReInitialization, "Let binding re-initialization") \
1245 V(kLhsHasBeenClobbered, "lhs has been clobbered") \
1226 V(kLiveBytesCountOverflowChunkSize, "Live Bytes Count overflow chunk size") \ 1246 V(kLiveBytesCountOverflowChunkSize, "Live Bytes Count overflow chunk size") \
1247 V(kLiveEditFrameDroppingIsNotSupportedOnA64, \
1248 "LiveEdit frame dropping is not supported on a64") \
1227 V(kLiveEditFrameDroppingIsNotSupportedOnArm, \ 1249 V(kLiveEditFrameDroppingIsNotSupportedOnArm, \
1228 "LiveEdit frame dropping is not supported on arm") \ 1250 "LiveEdit frame dropping is not supported on arm") \
1229 V(kLiveEditFrameDroppingIsNotSupportedOnMips, \ 1251 V(kLiveEditFrameDroppingIsNotSupportedOnMips, \
1230 "LiveEdit frame dropping is not supported on mips") \ 1252 "LiveEdit frame dropping is not supported on mips") \
1231 V(kLiveEdit, "LiveEdit") \ 1253 V(kLiveEdit, "LiveEdit") \
1232 V(kLookupVariableInCountOperation, \ 1254 V(kLookupVariableInCountOperation, \
1233 "Lookup variable in count operation") \ 1255 "Lookup variable in count operation") \
1234 V(kMapIsNoLongerInEax, "Map is no longer in eax") \ 1256 V(kMapIsNoLongerInEax, "Map is no longer in eax") \
1235 V(kModuleDeclaration, "Module declaration") \ 1257 V(kModuleDeclaration, "Module declaration") \
1236 V(kModuleLiteral, "Module literal") \ 1258 V(kModuleLiteral, "Module literal") \
(...skipping 15 matching lines...) Expand all
1252 "Not enough virtual registers for values") \ 1274 "Not enough virtual registers for values") \
1253 V(kNotEnoughSpillSlotsForOsr, \ 1275 V(kNotEnoughSpillSlotsForOsr, \
1254 "Not enough spill slots for OSR") \ 1276 "Not enough spill slots for OSR") \
1255 V(kNotEnoughVirtualRegistersRegalloc, \ 1277 V(kNotEnoughVirtualRegistersRegalloc, \
1256 "Not enough virtual registers (regalloc)") \ 1278 "Not enough virtual registers (regalloc)") \
1257 V(kObjectFoundInSmiOnlyArray, "Object found in smi-only array") \ 1279 V(kObjectFoundInSmiOnlyArray, "Object found in smi-only array") \
1258 V(kObjectLiteralWithComplexProperty, \ 1280 V(kObjectLiteralWithComplexProperty, \
1259 "Object literal with complex property") \ 1281 "Object literal with complex property") \
1260 V(kOddballInStringTableIsNotUndefinedOrTheHole, \ 1282 V(kOddballInStringTableIsNotUndefinedOrTheHole, \
1261 "Oddball in string table is not undefined or the hole") \ 1283 "Oddball in string table is not undefined or the hole") \
1284 V(kOffsetOutOfRange, "Offset out of range") \
1262 V(kOperandIsASmiAndNotAName, "Operand is a smi and not a name") \ 1285 V(kOperandIsASmiAndNotAName, "Operand is a smi and not a name") \
1263 V(kOperandIsASmiAndNotAString, "Operand is a smi and not a string") \ 1286 V(kOperandIsASmiAndNotAString, "Operand is a smi and not a string") \
1264 V(kOperandIsASmi, "Operand is a smi") \ 1287 V(kOperandIsASmi, "Operand is a smi") \
1265 V(kOperandIsNotAName, "Operand is not a name") \ 1288 V(kOperandIsNotAName, "Operand is not a name") \
1266 V(kOperandIsNotANumber, "Operand is not a number") \ 1289 V(kOperandIsNotANumber, "Operand is not a number") \
1267 V(kOperandIsNotASmi, "Operand is not a smi") \ 1290 V(kOperandIsNotASmi, "Operand is not a smi") \
1268 V(kOperandIsNotAString, "Operand is not a string") \ 1291 V(kOperandIsNotAString, "Operand is not a string") \
1269 V(kOperandIsNotSmi, "Operand is not smi") \ 1292 V(kOperandIsNotSmi, "Operand is not smi") \
1270 V(kOperandNotANumber, "Operand not a number") \ 1293 V(kOperandNotANumber, "Operand not a number") \
1271 V(kOptimizationDisabled, "Optimization is disabled") \ 1294 V(kOptimizationDisabled, "Optimization is disabled") \
1272 V(kOptimizedTooManyTimes, "Optimized too many times") \ 1295 V(kOptimizedTooManyTimes, "Optimized too many times") \
1273 V(kOutOfVirtualRegistersWhileTryingToAllocateTempRegister, \ 1296 V(kOutOfVirtualRegistersWhileTryingToAllocateTempRegister, \
1274 "Out of virtual registers while trying to allocate temp register") \ 1297 "Out of virtual registers while trying to allocate temp register") \
1275 V(kParseScopeError, "Parse/scope error") \ 1298 V(kParseScopeError, "Parse/scope error") \
1276 V(kPossibleDirectCallToEval, "Possible direct call to eval") \ 1299 V(kPossibleDirectCallToEval, "Possible direct call to eval") \
1300 V(kPreconditionsWereNotMet, "Preconditions were not met") \
1277 V(kPropertyAllocationCountFailed, "Property allocation count failed") \ 1301 V(kPropertyAllocationCountFailed, "Property allocation count failed") \
1278 V(kReceivedInvalidReturnAddress, "Received invalid return address") \ 1302 V(kReceivedInvalidReturnAddress, "Received invalid return address") \
1279 V(kReferenceToAVariableWhichRequiresDynamicLookup, \ 1303 V(kReferenceToAVariableWhichRequiresDynamicLookup, \
1280 "Reference to a variable which requires dynamic lookup") \ 1304 "Reference to a variable which requires dynamic lookup") \
1281 V(kReferenceToGlobalLexicalVariable, \ 1305 V(kReferenceToGlobalLexicalVariable, \
1282 "Reference to global lexical variable") \ 1306 "Reference to global lexical variable") \
1283 V(kReferenceToUninitializedVariable, "Reference to uninitialized variable") \ 1307 V(kReferenceToUninitializedVariable, "Reference to uninitialized variable") \
1284 V(kRegisterDidNotMatchExpectedRoot, "Register did not match expected root") \ 1308 V(kRegisterDidNotMatchExpectedRoot, "Register did not match expected root") \
1285 V(kRegisterWasClobbered, "Register was clobbered") \ 1309 V(kRegisterWasClobbered, "Register was clobbered") \
1310 V(kRememberedSetPointerInNewSpace, "Remembered set pointer is in new space") \
1311 V(kReturnAddressNotFoundInFrame, "Return address not found in frame") \
1312 V(kRhsHasBeenClobbered, "Rhs has been clobbered") \
1286 V(kScopedBlock, "ScopedBlock") \ 1313 V(kScopedBlock, "ScopedBlock") \
1287 V(kSmiAdditionOverflow, "Smi addition overflow") \ 1314 V(kSmiAdditionOverflow, "Smi addition overflow") \
1288 V(kSmiSubtractionOverflow, "Smi subtraction overflow") \ 1315 V(kSmiSubtractionOverflow, "Smi subtraction overflow") \
1316 V(kStackAccessBelowStackPointer, "Stack access below stack pointer") \
1289 V(kStackFrameTypesMustMatch, "Stack frame types must match") \ 1317 V(kStackFrameTypesMustMatch, "Stack frame types must match") \
1290 V(kSwitchStatementMixedOrNonLiteralSwitchLabels, \ 1318 V(kSwitchStatementMixedOrNonLiteralSwitchLabels, \
1291 "SwitchStatement: mixed or non-literal switch labels") \ 1319 "SwitchStatement: mixed or non-literal switch labels") \
1292 V(kSwitchStatementTooManyClauses, "SwitchStatement: too many clauses") \ 1320 V(kSwitchStatementTooManyClauses, "SwitchStatement: too many clauses") \
1321 V(kTheCurrentStackPointerIsBelowCsp, \
1322 "The current stack pointer is below csp") \
1293 V(kTheInstructionShouldBeALui, "The instruction should be a lui") \ 1323 V(kTheInstructionShouldBeALui, "The instruction should be a lui") \
1294 V(kTheInstructionShouldBeAnOri, "The instruction should be an ori") \ 1324 V(kTheInstructionShouldBeAnOri, "The instruction should be an ori") \
1295 V(kTheInstructionToPatchShouldBeALoadFromPc, \ 1325 V(kTheInstructionToPatchShouldBeALoadFromPc, \
1296 "The instruction to patch should be a load from pc") \ 1326 "The instruction to patch should be a load from pc") \
1327 V(kTheInstructionToPatchShouldBeAnLdrLiteral, \
1328 "The instruction to patch should be a ldr literal") \
1297 V(kTheInstructionToPatchShouldBeALui, \ 1329 V(kTheInstructionToPatchShouldBeALui, \
1298 "The instruction to patch should be a lui") \ 1330 "The instruction to patch should be a lui") \
1299 V(kTheInstructionToPatchShouldBeAnOri, \ 1331 V(kTheInstructionToPatchShouldBeAnOri, \
1300 "The instruction to patch should be an ori") \ 1332 "The instruction to patch should be an ori") \
1333 V(kTheSourceAndDestinationAreTheSame, \
1334 "The source and destination are the same") \
1335 V(kTheStackWasCorruptedByMacroAssemblerCall, \
1336 "The stack was corrupted by MacroAssembler::Call()") \
1301 V(kTooManyParametersLocals, "Too many parameters/locals") \ 1337 V(kTooManyParametersLocals, "Too many parameters/locals") \
1302 V(kTooManyParameters, "Too many parameters") \ 1338 V(kTooManyParameters, "Too many parameters") \
1303 V(kTooManySpillSlotsNeededForOSR, "Too many spill slots needed for OSR") \ 1339 V(kTooManySpillSlotsNeededForOSR, "Too many spill slots needed for OSR") \
1340 V(kToOperand32UnsupportedImmediate, "ToOperand32 unsupported immediate.") \
1304 V(kToOperandIsDoubleRegisterUnimplemented, \ 1341 V(kToOperandIsDoubleRegisterUnimplemented, \
1305 "ToOperand IsDoubleRegister unimplemented") \ 1342 "ToOperand IsDoubleRegister unimplemented") \
1306 V(kToOperandUnsupportedDoubleImmediate, \ 1343 V(kToOperandUnsupportedDoubleImmediate, \
1307 "ToOperand Unsupported double immediate") \ 1344 "ToOperand Unsupported double immediate") \
1308 V(kTryCatchStatement, "TryCatchStatement") \ 1345 V(kTryCatchStatement, "TryCatchStatement") \
1309 V(kTryFinallyStatement, "TryFinallyStatement") \ 1346 V(kTryFinallyStatement, "TryFinallyStatement") \
1310 V(kUnableToEncodeValueAsSmi, "Unable to encode value as smi") \ 1347 V(kUnableToEncodeValueAsSmi, "Unable to encode value as smi") \
1311 V(kUnalignedAllocationInNewSpace, "Unaligned allocation in new space") \ 1348 V(kUnalignedAllocationInNewSpace, "Unaligned allocation in new space") \
1349 V(kUnalignedCellInWriteBarrier, "Unaligned cell in write barrier") \
1312 V(kUndefinedValueNotLoaded, "Undefined value not loaded") \ 1350 V(kUndefinedValueNotLoaded, "Undefined value not loaded") \
1313 V(kUndoAllocationOfNonAllocatedMemory, \ 1351 V(kUndoAllocationOfNonAllocatedMemory, \
1314 "Undo allocation of non allocated memory") \ 1352 "Undo allocation of non allocated memory") \
1315 V(kUnexpectedAllocationTop, "Unexpected allocation top") \ 1353 V(kUnexpectedAllocationTop, "Unexpected allocation top") \
1354 V(kUnexpectedColorFound, "Unexpected color bit pattern found") \
1316 V(kUnexpectedElementsKindInArrayConstructor, \ 1355 V(kUnexpectedElementsKindInArrayConstructor, \
1317 "Unexpected ElementsKind in array constructor") \ 1356 "Unexpected ElementsKind in array constructor") \
1318 V(kUnexpectedFallthroughFromCharCodeAtSlowCase, \ 1357 V(kUnexpectedFallthroughFromCharCodeAtSlowCase, \
1319 "Unexpected fallthrough from CharCodeAt slow case") \ 1358 "Unexpected fallthrough from CharCodeAt slow case") \
1320 V(kUnexpectedFallthroughFromCharFromCodeSlowCase, \ 1359 V(kUnexpectedFallthroughFromCharFromCodeSlowCase, \
1321 "Unexpected fallthrough from CharFromCode slow case") \ 1360 "Unexpected fallthrough from CharFromCode slow case") \
1322 V(kUnexpectedFallThroughFromStringComparison, \ 1361 V(kUnexpectedFallThroughFromStringComparison, \
1323 "Unexpected fall-through from string comparison") \ 1362 "Unexpected fall-through from string comparison") \
1324 V(kUnexpectedFallThroughInBinaryStubGenerateFloatingPointCode, \ 1363 V(kUnexpectedFallThroughInBinaryStubGenerateFloatingPointCode, \
1325 "Unexpected fall-through in BinaryStub_GenerateFloatingPointCode") \ 1364 "Unexpected fall-through in BinaryStub_GenerateFloatingPointCode") \
1326 V(kUnexpectedFallthroughToCharCodeAtSlowCase, \ 1365 V(kUnexpectedFallthroughToCharCodeAtSlowCase, \
1327 "Unexpected fallthrough to CharCodeAt slow case") \ 1366 "Unexpected fallthrough to CharCodeAt slow case") \
1328 V(kUnexpectedFallthroughToCharFromCodeSlowCase, \ 1367 V(kUnexpectedFallthroughToCharFromCodeSlowCase, \
1329 "Unexpected fallthrough to CharFromCode slow case") \ 1368 "Unexpected fallthrough to CharFromCode slow case") \
1330 V(kUnexpectedFPUStackDepthAfterInstruction, \ 1369 V(kUnexpectedFPUStackDepthAfterInstruction, \
1331 "Unexpected FPU stack depth after instruction") \ 1370 "Unexpected FPU stack depth after instruction") \
1332 V(kUnexpectedInitialMapForArrayFunction1, \ 1371 V(kUnexpectedInitialMapForArrayFunction1, \
1333 "Unexpected initial map for Array function (1)") \ 1372 "Unexpected initial map for Array function (1)") \
1334 V(kUnexpectedInitialMapForArrayFunction2, \ 1373 V(kUnexpectedInitialMapForArrayFunction2, \
1335 "Unexpected initial map for Array function (2)") \ 1374 "Unexpected initial map for Array function (2)") \
1336 V(kUnexpectedInitialMapForArrayFunction, \ 1375 V(kUnexpectedInitialMapForArrayFunction, \
1337 "Unexpected initial map for Array function") \ 1376 "Unexpected initial map for Array function") \
1338 V(kUnexpectedInitialMapForInternalArrayFunction, \ 1377 V(kUnexpectedInitialMapForInternalArrayFunction, \
1339 "Unexpected initial map for InternalArray function") \ 1378 "Unexpected initial map for InternalArray function") \
1340 V(kUnexpectedLevelAfterReturnFromApiCall, \ 1379 V(kUnexpectedLevelAfterReturnFromApiCall, \
1341 "Unexpected level after return from api call") \ 1380 "Unexpected level after return from api call") \
1381 V(kUnexpectedNegativeValue, "Unexpected negative value") \
1342 V(kUnexpectedNumberOfPreAllocatedPropertyFields, \ 1382 V(kUnexpectedNumberOfPreAllocatedPropertyFields, \
1343 "Unexpected number of pre-allocated property fields") \ 1383 "Unexpected number of pre-allocated property fields") \
1384 V(kUnexpectedSmi, "Unexpected smi value") \
1344 V(kUnexpectedStringFunction, "Unexpected String function") \ 1385 V(kUnexpectedStringFunction, "Unexpected String function") \
1345 V(kUnexpectedStringType, "Unexpected string type") \ 1386 V(kUnexpectedStringType, "Unexpected string type") \
1346 V(kUnexpectedStringWrapperInstanceSize, \ 1387 V(kUnexpectedStringWrapperInstanceSize, \
1347 "Unexpected string wrapper instance size") \ 1388 "Unexpected string wrapper instance size") \
1348 V(kUnexpectedTypeForRegExpDataFixedArrayExpected, \ 1389 V(kUnexpectedTypeForRegExpDataFixedArrayExpected, \
1349 "Unexpected type for RegExp data, FixedArray expected") \ 1390 "Unexpected type for RegExp data, FixedArray expected") \
1391 V(kUnexpectedValue, "Unexpected value") \
1350 V(kUnexpectedUnusedPropertiesOfStringWrapper, \ 1392 V(kUnexpectedUnusedPropertiesOfStringWrapper, \
1351 "Unexpected unused properties of string wrapper") \ 1393 "Unexpected unused properties of string wrapper") \
1394 V(kUnimplemented, "unimplemented") \
1352 V(kUninitializedKSmiConstantRegister, "Uninitialized kSmiConstantRegister") \ 1395 V(kUninitializedKSmiConstantRegister, "Uninitialized kSmiConstantRegister") \
1353 V(kUnknown, "Unknown") \ 1396 V(kUnknown, "Unknown") \
1354 V(kUnsupportedConstCompoundAssignment, \ 1397 V(kUnsupportedConstCompoundAssignment, \
1355 "Unsupported const compound assignment") \ 1398 "Unsupported const compound assignment") \
1356 V(kUnsupportedCountOperationWithConst, \ 1399 V(kUnsupportedCountOperationWithConst, \
1357 "Unsupported count operation with const") \ 1400 "Unsupported count operation with const") \
1358 V(kUnsupportedDoubleImmediate, "Unsupported double immediate") \ 1401 V(kUnsupportedDoubleImmediate, "Unsupported double immediate") \
1359 V(kUnsupportedLetCompoundAssignment, "Unsupported let compound assignment") \ 1402 V(kUnsupportedLetCompoundAssignment, "Unsupported let compound assignment") \
1360 V(kUnsupportedLookupSlotInDeclaration, \ 1403 V(kUnsupportedLookupSlotInDeclaration, \
1361 "Unsupported lookup slot in declaration") \ 1404 "Unsupported lookup slot in declaration") \
(...skipping 7209 matching lines...) Expand 10 before | Expand all | Expand 10 after
8571 static const int kArrayIndexHashMask = (1 << kArrayIndexHashLengthShift) - 1; 8614 static const int kArrayIndexHashMask = (1 << kArrayIndexHashLengthShift) - 1;
8572 8615
8573 static const int kArrayIndexValueMask = 8616 static const int kArrayIndexValueMask =
8574 ((1 << kArrayIndexValueBits) - 1) << kHashShift; 8617 ((1 << kArrayIndexValueBits) - 1) << kHashShift;
8575 8618
8576 // Check that kMaxCachedArrayIndexLength + 1 is a power of two so we 8619 // Check that kMaxCachedArrayIndexLength + 1 is a power of two so we
8577 // could use a mask to test if the length of string is less than or equal to 8620 // could use a mask to test if the length of string is less than or equal to
8578 // kMaxCachedArrayIndexLength. 8621 // kMaxCachedArrayIndexLength.
8579 STATIC_CHECK(IS_POWER_OF_TWO(kMaxCachedArrayIndexLength + 1)); 8622 STATIC_CHECK(IS_POWER_OF_TWO(kMaxCachedArrayIndexLength + 1));
8580 8623
8581 static const int kContainsCachedArrayIndexMask = 8624 static const unsigned int kContainsCachedArrayIndexMask =
8582 (~kMaxCachedArrayIndexLength << kArrayIndexHashLengthShift) | 8625 (~kMaxCachedArrayIndexLength << kArrayIndexHashLengthShift) |
8583 kIsNotArrayIndexMask; 8626 kIsNotArrayIndexMask;
8584 8627
8585 // Value of empty hash field indicating that the hash is not computed. 8628 // Value of empty hash field indicating that the hash is not computed.
8586 static const int kEmptyHashField = 8629 static const int kEmptyHashField =
8587 kIsNotArrayIndexMask | kHashNotComputedMask; 8630 kIsNotArrayIndexMask | kHashNotComputedMask;
8588 8631
8589 protected: 8632 protected:
8590 static inline bool IsHashFieldComputed(uint32_t field); 8633 static inline bool IsHashFieldComputed(uint32_t field);
8591 8634
(...skipping 2122 matching lines...) Expand 10 before | Expand all | Expand 10 after
10714 } else { 10757 } else {
10715 value &= ~(1 << bit_position); 10758 value &= ~(1 << bit_position);
10716 } 10759 }
10717 return value; 10760 return value;
10718 } 10761 }
10719 }; 10762 };
10720 10763
10721 } } // namespace v8::internal 10764 } } // namespace v8::internal
10722 10765
10723 #endif // V8_OBJECTS_H_ 10766 #endif // V8_OBJECTS_H_
OLDNEW
« no previous file with comments | « src/mips/simulator-mips.h ('k') | src/platform-linux.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698