diff -r 4f2f89ce4247 -r 303757a437d3 JavaScriptCore/yarr/RegexJIT.cpp --- a/JavaScriptCore/yarr/RegexJIT.cpp Fri Sep 17 09:02:29 2010 +0300 +++ b/JavaScriptCore/yarr/RegexJIT.cpp Mon Oct 04 01:32:07 2010 +0300 @@ -1413,6 +1413,9 @@ push(ARMRegisters::r4); push(ARMRegisters::r5); push(ARMRegisters::r6); +#if CPU(ARM_TRADITIONAL) + push(ARMRegisters::r8); // scratch register +#endif move(ARMRegisters::r3, output); #elif CPU(MIPS) // Do nothing. @@ -1430,6 +1433,9 @@ pop(X86Registers::ebx); pop(X86Registers::ebp); #elif CPU(ARM) +#if CPU(ARM_TRADITIONAL) + pop(ARMRegisters::r8); // scratch register +#endif pop(ARMRegisters::r6); pop(ARMRegisters::r5); pop(ARMRegisters::r4);