[PATCH] powerpc: Cleanup LOADADDR etc. asm macros
authorDavid Gibson <david@gibson.dropbear.id.au>
Fri, 13 Jan 2006 03:56:25 +0000 (14:56 +1100)
committerPaul Mackerras <paulus@samba.org>
Fri, 13 Jan 2006 10:16:23 +0000 (21:16 +1100)
commite58c3495e6007af59382540bb21ee941e470d88d
tree24b559cb768bfa5cf4bdef69f2943b081a1f5afa
parent7e78e5e502d4f220d24c6f738f2fdb078ad33607
[PATCH] powerpc: Cleanup LOADADDR etc. asm macros

This patch consolidates the variety of macros used for loading 32 or
64-bit constants in assembler (LOADADDR, LOADBASE, SET_REG_TO_*).  The
idea is to make the set of macros consistent across 32 and 64 bit and
to make it more obvious which is the appropriate one to use in a given
situation.  The new macros and their semantics are described in the
comments in ppc_asm.h.

In the process, we change several places that were unnecessarily using
immediate loads on ppc64 to use the GOT/TOC.  Likewise we cleanup a
couple of places where we were clumsily subtracting PAGE_OFFSET with
asm instructions to use assemble-time arithmetic or the toreal() macro
instead.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/kernel/cpu_setup_power4.S
arch/powerpc/kernel/entry_32.S
arch/powerpc/kernel/entry_64.S
arch/powerpc/kernel/fpu.S
arch/powerpc/kernel/head_64.S
arch/powerpc/kernel/idle_power4.S
arch/powerpc/kernel/misc_32.S
arch/powerpc/kernel/misc_64.S
include/asm-powerpc/ppc_asm.h