Changeset 79247 in webkit for trunk/Source/JavaScriptCore/jit
- Timestamp:
- Feb 21, 2011, 1:14:57 PM (14 years ago)
- Location:
- trunk/Source/JavaScriptCore/jit
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/jit/JIT.h
r78732 r79247 37 37 #endif 38 38 39 #define ASSERT_JIT_OFFSET(actual, expected) ASSERT_WITH_MESSAGE(actual == expected, "JIT Offset \"%s\" should be %d, not %d.\n", #expected, static_cast<int>( actual), static_cast<int>(expected));39 #define ASSERT_JIT_OFFSET(actual, expected) ASSERT_WITH_MESSAGE(actual == expected, "JIT Offset \"%s\" should be %d, not %d.\n", #expected, static_cast<int>(expected), static_cast<int>(actual)); 40 40 41 41 #include "CodeBlock.h" -
trunk/Source/JavaScriptCore/jit/JITCall32_64.cpp
r69045 r79247 283 283 284 284 addSlowCase(jumpToSlow); 285 ASSERT (differenceBetween(addressOfLinkedFunctionCheck, jumpToSlow) ==patchOffsetOpCallCompareToJump);285 ASSERT_JIT_OFFSET(differenceBetween(addressOfLinkedFunctionCheck, jumpToSlow), patchOffsetOpCallCompareToJump); 286 286 m_callStructureStubCompilationInfo[callLinkInfoIndex].hotPathBegin = addressOfLinkedFunctionCheck; 287 287 -
trunk/Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp
r78732 r79247 226 226 Jump match = jump(); 227 227 228 ASSERT (differenceBetween(info.structureToCompare, protoObj) ==patchOffsetMethodCheckProtoObj);229 ASSERT (differenceBetween(info.structureToCompare, protoStructureToCompare) ==patchOffsetMethodCheckProtoStruct);230 ASSERT (differenceBetween(info.structureToCompare, putFunction) ==patchOffsetMethodCheckPutFunction);228 ASSERT_JIT_OFFSET(differenceBetween(info.structureToCompare, protoObj), patchOffsetMethodCheckProtoObj); 229 ASSERT_JIT_OFFSET(differenceBetween(info.structureToCompare, protoStructureToCompare), patchOffsetMethodCheckProtoStruct); 230 ASSERT_JIT_OFFSET(differenceBetween(info.structureToCompare, putFunction), patchOffsetMethodCheckPutFunction); 231 231 232 232 // Link the failure cases here. … … 432 432 Jump structureCheck = branchPtrWithPatch(NotEqual, Address(regT0, OBJECT_OFFSETOF(JSCell, m_structure)), structureToCompare, ImmPtr(reinterpret_cast<void*>(patchGetByIdDefaultStructure))); 433 433 addSlowCase(structureCheck); 434 ASSERT (differenceBetween(hotPathBegin, structureToCompare) ==patchOffsetGetByIdStructure);435 ASSERT (differenceBetween(hotPathBegin, structureCheck) ==patchOffsetGetByIdBranchToSlowCase);434 ASSERT_JIT_OFFSET(differenceBetween(hotPathBegin, structureToCompare), patchOffsetGetByIdStructure); 435 ASSERT_JIT_OFFSET(differenceBetween(hotPathBegin, structureCheck), patchOffsetGetByIdBranchToSlowCase); 436 436 437 437 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSObject, m_propertyStorage)), regT2); 438 438 DataLabel32 displacementLabel1 = loadPtrWithAddressOffsetPatch(Address(regT2, patchGetByIdDefaultOffset), regT0); // payload 439 ASSERT (differenceBetween(hotPathBegin, displacementLabel1) ==patchOffsetGetByIdPropertyMapOffset1);439 ASSERT_JIT_OFFSET(differenceBetween(hotPathBegin, displacementLabel1), patchOffsetGetByIdPropertyMapOffset1); 440 440 DataLabel32 displacementLabel2 = loadPtrWithAddressOffsetPatch(Address(regT2, patchGetByIdDefaultOffset), regT1); // tag 441 ASSERT (differenceBetween(hotPathBegin, displacementLabel2) ==patchOffsetGetByIdPropertyMapOffset2);441 ASSERT_JIT_OFFSET(differenceBetween(hotPathBegin, displacementLabel2), patchOffsetGetByIdPropertyMapOffset2); 442 442 443 443 Label putResult(this); 444 ASSERT (differenceBetween(hotPathBegin, putResult) ==patchOffsetGetByIdPutResult);444 ASSERT_JIT_OFFSET(differenceBetween(hotPathBegin, putResult), patchOffsetGetByIdPutResult); 445 445 446 446 END_UNINTERRUPTED_SEQUENCE(sequenceGetByIdHotPath); … … 478 478 END_UNINTERRUPTED_SEQUENCE(sequenceGetByIdSlowCase); 479 479 480 ASSERT (differenceBetween(coldPathBegin, call) ==patchOffsetGetByIdSlowCaseCall);480 ASSERT_JIT_OFFSET(differenceBetween(coldPathBegin, call), patchOffsetGetByIdSlowCaseCall); 481 481 482 482 // Track the location of the call; this will be used to recover patch information. … … 507 507 DataLabelPtr structureToCompare; 508 508 addSlowCase(branchPtrWithPatch(NotEqual, Address(regT0, OBJECT_OFFSETOF(JSCell, m_structure)), structureToCompare, ImmPtr(reinterpret_cast<void*>(patchGetByIdDefaultStructure)))); 509 ASSERT (differenceBetween(hotPathBegin, structureToCompare) ==patchOffsetPutByIdStructure);509 ASSERT_JIT_OFFSET(differenceBetween(hotPathBegin, structureToCompare), patchOffsetPutByIdStructure); 510 510 511 511 loadPtr(Address(regT0, OBJECT_OFFSETOF(JSObject, m_propertyStorage)), regT0); … … 515 515 END_UNINTERRUPTED_SEQUENCE(sequencePutById); 516 516 517 ASSERT (differenceBetween(hotPathBegin, displacementLabel1) ==patchOffsetPutByIdPropertyMapOffset1);518 ASSERT (differenceBetween(hotPathBegin, displacementLabel2) ==patchOffsetPutByIdPropertyMapOffset2);517 ASSERT_JIT_OFFSET(differenceBetween(hotPathBegin, displacementLabel1), patchOffsetPutByIdPropertyMapOffset1); 518 ASSERT_JIT_OFFSET(differenceBetween(hotPathBegin, displacementLabel2), patchOffsetPutByIdPropertyMapOffset2); 519 519 } 520 520
Note:
See TracChangeset
for help on using the changeset viewer.