diff options
author | Matthew Leach <matthew.leach@arm.com> | 2013-10-11 14:52:15 +0100 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2013-10-25 15:59:38 +0100 |
commit | e68bedaa03c950ae8045e7899e7a6b2a97d1bf41 (patch) | |
tree | 95e93cb128426c1a6c7437e91e898ba02fb310b9 /arch/arm64 | |
parent | a1d5ebaf8ccdd100f45042ce32c591867de04ac3 (diff) | |
download | linux-e68bedaa03c950ae8045e7899e7a6b2a97d1bf41.tar.gz linux-e68bedaa03c950ae8045e7899e7a6b2a97d1bf41.tar.bz2 linux-e68bedaa03c950ae8045e7899e7a6b2a97d1bf41.zip |
arm64: asm: add CPU_LE & CPU_BE assembler helpers
Add CPU_LE and CPU_BE to select assembler code in little and big
endian configurations respectively.
Signed-off-by: Matthew Leach <matthew.leach@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64')
-rw-r--r-- | arch/arm64/include/asm/assembler.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/assembler.h b/arch/arm64/include/asm/assembler.h index 381b935e74cd..fd3e3924041b 100644 --- a/arch/arm64/include/asm/assembler.h +++ b/arch/arm64/include/asm/assembler.h @@ -115,6 +115,25 @@ lr .req x30 // link register .align 7 b \label .endm + +/* + * Select code when configured for BE. + */ +#ifdef CONFIG_CPU_BIG_ENDIAN +#define CPU_BE(code...) code +#else +#define CPU_BE(code...) +#endif + +/* + * Select code when configured for LE. + */ +#ifdef CONFIG_CPU_BIG_ENDIAN +#define CPU_LE(code...) +#else +#define CPU_LE(code...) code +#endif + /* * Define a macro that constructs a 64-bit value by concatenating two * 32-bit registers. Note that on big endian systems the order of the |