Index: cacao-0.98+hg7750/src/vm/jit/arm/asmpart.S =================================================================== --- cacao-0.98+hg7750.orig/src/vm/jit/arm/asmpart.S 2007-11-28 10:14:51.000000000 +0100 +++ cacao-0.98+hg7750/src/vm/jit/arm/asmpart.S 2007-11-28 10:15:31.000000000 +0100 @@ -302,35 +302,21 @@ * * *******************************************************************************/ -.equ sys_cacheflush,__ARM_NR_cacheflush /* syscall number for cache flushing */ - +.equ sys_cacheflush, 0x9f0002 asm_cacheflush: - add a1, a0, a1 - mov a2, #0 - -#if defined(__ARM_EABI__) - /* According to EABI, the syscall number should be passed via R7, - see "http://wiki.debian.org/ArmEabiPort" for additional details. */ - - stmfd sp!, {r7} - mov r7, #0x0f0000 - add r7, r7, #0x000002 -#endif + add a1, a0, a1 + mov a2, #0 #if 0 - /* TWISTI: required on iyonix, maybe a linux-2.4 bug */ - mov a0, #0x0 - mov a1, #0xff000000 + /* TWISTI: required on iyonix, maybe a linux-2.4 bug */ + /* TODO: repeair this! */ + /* cacheflush is messed up beyond all repair! */ + mov a0, #0x0 + mov a1, #0xff000000 #endif - swi sys_cacheflush - -#if defined(__ARM_EABI__) - ldmfd sp!, {r7} -#endif - - mov pc, lr - + swi #sys_cacheflush + mov pc, lr /* disable exec-stacks ********************************************************/