Changeset 48525 in webkit for trunk/JavaScriptCore/jit
- Timestamp:
- Sep 18, 2009, 1:18:27 PM (16 years ago)
- Location:
- trunk/JavaScriptCore/jit
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/jit/ExecutableAllocator.h
r48217 r48525 181 181 { 182 182 } 183 #elif PLATFORM _ARM_ARCH(7) && PLATFORM(IPHONE)183 #elif PLATFORM(ARM_THUMB2) && PLATFORM(IPHONE) 184 184 static void cacheFlush(void* code, size_t size) 185 185 { … … 192 192 User::IMB_Range(code, static_cast<char*>(code) + size); 193 193 } 194 #elif PLATFORM(ARM )194 #elif PLATFORM(ARM_TRADITIONAL) 195 195 static void cacheFlush(void* code, size_t size) 196 196 { -
trunk/JavaScriptCore/jit/JIT.h
r47614 r48525 227 227 static const FPRegisterID fpRegT1 = X86Registers::xmm1; 228 228 static const FPRegisterID fpRegT2 = X86Registers::xmm2; 229 #elif PLATFORM _ARM_ARCH(7)229 #elif PLATFORM(ARM_THUMB2) 230 230 static const RegisterID returnValueRegister = ARMRegisters::r0; 231 231 static const RegisterID cachedResultRegister = ARMRegisters::r0; … … 243 243 static const FPRegisterID fpRegT1 = ARMRegisters::d1; 244 244 static const FPRegisterID fpRegT2 = ARMRegisters::d2; 245 #elif PLATFORM(ARM )245 #elif PLATFORM(ARM_TRADITIONAL) 246 246 static const RegisterID returnValueRegister = ARMRegisters::r0; 247 247 static const RegisterID cachedResultRegister = ARMRegisters::r0; … … 572 572 static const int patchOffsetMethodCheckProtoStruct = 18; 573 573 static const int patchOffsetMethodCheckPutFunction = 29; 574 #elif PLATFORM _ARM_ARCH(7)574 #elif PLATFORM(ARM_THUMB2) 575 575 // These architecture specific value are used to enable patching - see comment on op_put_by_id. 576 576 static const int patchOffsetPutByIdStructure = 10; … … 595 595 static const int patchOffsetMethodCheckProtoStruct = 28; 596 596 static const int patchOffsetMethodCheckPutFunction = 46; 597 #elif PLATFORM(ARM )597 #elif PLATFORM(ARM_TRADITIONAL) 598 598 // These architecture specific value are used to enable patching - see comment on op_put_by_id. 599 599 static const int patchOffsetPutByIdStructure = 4; … … 621 621 #endif // USE(JSVALUE32_64) 622 622 623 #if PLATFORM(ARM ) && !PLATFORM_ARM_ARCH(7)623 #if PLATFORM(ARM_TRADITIONAL) 624 624 // sequenceOpCall 625 625 static const int sequenceOpCallInstructionSpace = 12; -
trunk/JavaScriptCore/jit/JITInlineMethods.h
r47614 r48525 111 111 ALWAYS_INLINE void JIT::beginUninterruptedSequence(int insnSpace, int constSpace) 112 112 { 113 #if PLATFORM(ARM ) && !PLATFORM_ARM_ARCH(7)113 #if PLATFORM(ARM_TRADITIONAL) 114 114 #ifndef NDEBUG 115 115 // Ensure the label after the sequence can also fit … … 140 140 #endif 141 141 142 #if PLATFORM( X86) || PLATFORM(X86_64) || (PLATFORM(ARM) && !PLATFORM_ARM_ARCH(7))142 #if PLATFORM(ARM_THUMB2) 143 143 144 144 ALWAYS_INLINE void JIT::preserveReturnAddressAfterCall(RegisterID reg) 145 145 { 146 move(linkRegister, reg); 147 } 148 149 ALWAYS_INLINE void JIT::restoreReturnAddressBeforeReturn(RegisterID reg) 150 { 151 move(reg, linkRegister); 152 } 153 154 ALWAYS_INLINE void JIT::restoreReturnAddressBeforeReturn(Address address) 155 { 156 loadPtr(address, linkRegister); 157 } 158 159 #else // PLATFORM(X86) || PLATFORM(X86_64) || PLATFORM(ARM_TRADITIONAL) 160 161 ALWAYS_INLINE void JIT::preserveReturnAddressAfterCall(RegisterID reg) 162 { 146 163 pop(reg); 147 164 } … … 155 172 { 156 173 push(address); 157 }158 159 #elif PLATFORM_ARM_ARCH(7)160 161 ALWAYS_INLINE void JIT::preserveReturnAddressAfterCall(RegisterID reg)162 {163 move(linkRegister, reg);164 }165 166 ALWAYS_INLINE void JIT::restoreReturnAddressBeforeReturn(RegisterID reg)167 {168 move(reg, linkRegister);169 }170 171 ALWAYS_INLINE void JIT::restoreReturnAddressBeforeReturn(Address address)172 {173 loadPtr(address, linkRegister);174 174 } 175 175 … … 187 187 move(stackPointerRegister, firstArgumentRegister); 188 188 poke(callFrameRegister, OBJECT_OFFSETOF(struct JITStackFrame, callFrame) / sizeof (void*)); 189 #if PLATFORM(ARM ) && !PLATFORM_ARM_ARCH(7)189 #if PLATFORM(ARM_TRADITIONAL) 190 190 move(ctiReturnRegister, ARMRegisters::lr); 191 191 #endif … … 196 196 // Within a trampoline the return address will be on the stack at this point. 197 197 addPtr(Imm32(sizeof(void*)), stackPointerRegister, firstArgumentRegister); 198 #elif PLATFORM _ARM_ARCH(7)198 #elif PLATFORM(ARM_THUMB2) 199 199 move(stackPointerRegister, firstArgumentRegister); 200 200 #endif -
trunk/JavaScriptCore/jit/JITOpcodes.cpp
r47614 r48525 1682 1682 addPtr(Imm32(NativeCallFrameSize - sizeof(NativeFunctionCalleeSignature)), stackPointerRegister); 1683 1683 1684 #elif PLATFORM(ARM ) && !PLATFORM_ARM_ARCH(7)1684 #elif PLATFORM(ARM_TRADITIONAL) 1685 1685 emitGetFromCallFrameHeader32(RegisterFile::ArgumentCount, regT0); 1686 1686 -
trunk/JavaScriptCore/jit/JITStubs.cpp
r48067 r48525 194 194 ); 195 195 196 #elif COMPILER(GCC) && PLATFORM _ARM_ARCH(7)196 #elif COMPILER(GCC) && PLATFORM(ARM_THUMB2) 197 197 198 198 #if USE(JIT_STUB_ARGUMENT_VA_LIST) … … 453 453 ); 454 454 455 #elif COMPILER(GCC) && PLATFORM _ARM_ARCH(7)455 #elif COMPILER(GCC) && PLATFORM(ARM_THUMB2) 456 456 457 457 #if USE(JIT_STUB_ARGUMENT_VA_LIST) … … 517 517 ); 518 518 519 #elif COMPILER(GCC) && PLATFORM(ARM )519 #elif COMPILER(GCC) && PLATFORM(ARM_TRADITIONAL) 520 520 521 521 asm volatile ( … … 637 637 JIT::compileCTIMachineTrampolines(globalData, &m_executablePool, &m_ctiStringLengthTrampoline, &m_ctiVirtualCallLink, &m_ctiVirtualCall, &m_ctiNativeCallThunk); 638 638 639 #if PLATFORM _ARM_ARCH(7)639 #if PLATFORM(ARM_THUMB2) 640 640 // Unfortunate the arm compiler does not like the use of offsetof on JITStackFrame (since it contains non POD types), 641 641 // and the OBJECT_OFFSETOF macro does not appear constantish enough for it to be happy with its use in COMPILE_ASSERT … … 877 877 } while (0) 878 878 879 #if PLATFORM _ARM_ARCH(7)879 #if PLATFORM(ARM_THUMB2) 880 880 881 881 #define DEFINE_STUB_FUNCTION(rtype, op) \ -
trunk/JavaScriptCore/jit/JITStubs.h
r47412 r48525 130 130 #pragma pack(pop) 131 131 #endif // COMPILER(MSVC) 132 #elif PLATFORM _ARM_ARCH(7)132 #elif PLATFORM(ARM_THUMB2) 133 133 struct JITStackFrame { 134 134 void* reserved; // Unused … … 156 156 ReturnAddressPtr* returnAddressSlot() { return &thunkReturnAddress; } 157 157 }; 158 #elif PLATFORM(ARM )158 #elif PLATFORM(ARM_TRADITIONAL) 159 159 struct JITStackFrame { 160 160 JITStubArg padding; // Unused
Note:
See TracChangeset
for help on using the changeset viewer.