diff options
Diffstat (limited to 'sysdeps/m68k/__longjmp.c')
-rw-r--r-- | sysdeps/m68k/__longjmp.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/sysdeps/m68k/__longjmp.c b/sysdeps/m68k/__longjmp.c index 4fc61084a0..92dd803c17 100644 --- a/sysdeps/m68k/__longjmp.c +++ b/sysdeps/m68k/__longjmp.c @@ -29,22 +29,21 @@ __longjmp (__jmp_buf env, int val) #if defined(__HAVE_68881__) || defined(__HAVE_FPU__) /* Restore the floating-point registers. */ - asm volatile("fmovem%.x %0, fp0-fp7" : - /* No outputs. */ : "g" (env[0].__fpregs[0]) : - "fp0", "fp1", "fp2", "fp3", "fp4", "fp5", "fp6", "fp7"); + asm volatile("fmovem%.x %0, %/fp0-%/fp7" : + /* No outputs. */ : "g" (env[0].__fpregs[0])); #endif /* Put VAL in D0. */ - asm volatile("move%.l %0, d0" : /* No outputs. */ : + asm volatile("move%.l %0, %/d0" : /* No outputs. */ : "g" (val == 0 ? 1 : val) : "d0"); asm volatile(/* Restore the data and address registers. */ - "movem%.l %0, d1-d7/a0-a7\n" + "movem%.l %0, %/d1-%/d7/%/a0-%/a7\n" /* Return to setjmp's caller. */ #ifdef __motorola__ - "jmp (a0)" + "jmp (%/a0)" #else - "jmp a0@" + "jmp %/a0@" #endif : /* No outputs. */ : "g" (env[0].__dregs[0]) /* We don't bother with the clobbers, |