#define _ASM_PTR       __ASM_SEL(.long, .quad)
 #define _ASM_ALIGN     __ASM_SEL(.balign 4, .balign 8)
-#define _ASM_MOV_UL    __ASM_SIZE(mov)
 
+#define _ASM_MOV       __ASM_SIZE(mov)
 #define _ASM_INC       __ASM_SIZE(inc)
 #define _ASM_DEC       __ASM_SIZE(dec)
 #define _ASM_ADD       __ASM_SIZE(add)
 #define _ASM_SUB       __ASM_SIZE(sub)
 #define _ASM_XADD      __ASM_SIZE(xadd)
+
 #define _ASM_AX                __ASM_REG(ax)
 #define _ASM_BX                __ASM_REG(bx)
 #define _ASM_CX                __ASM_REG(cx)
 #define _ASM_DX                __ASM_REG(dx)
+#define _ASM_SP                __ASM_REG(sp)
+#define _ASM_BP                __ASM_REG(bp)
+#define _ASM_SI                __ASM_REG(si)
+#define _ASM_DI                __ASM_REG(di)
 
 /* Exception table entry */
 # define _ASM_EXTABLE(from,to) \
 
 do {                                                           \
        if (pm_trace_enabled) {                                 \
                const void *tracedata;                          \
-               asm volatile(_ASM_MOV_UL " $1f,%0\n"            \
+               asm volatile(_ASM_MOV " $1f,%0\n"               \
                             ".section .tracedata,\"a\"\n"      \
                             "1:\t.word %c1\n\t"                \
                             _ASM_PTR " %c2\n"                  \