diff options
| -rw-r--r-- | arch/powerpc/include/asm/exception-64s.h | 17 | 
1 files changed, 12 insertions, 5 deletions
| diff --git a/arch/powerpc/include/asm/exception-64s.h b/arch/powerpc/include/asm/exception-64s.h index f3c6272f430f..90f4b771df02 100644 --- a/arch/powerpc/include/asm/exception-64s.h +++ b/arch/powerpc/include/asm/exception-64s.h @@ -46,12 +46,19 @@  #define EX_DSISR	48  #define EX_CCR		52  #define EX_R3		56 -#define EX_LR		64 -#define EX_CFAR		72 -#define EX_PPR		80	/* SMT thread status register (priority) */ -#define EX_CTR		88 +#define EX_CFAR		64 +#define EX_PPR		72 +#define EX_CTR		80 -#define EX_SIZE		12	/* size in u64 units */ +#define EX_SIZE		11	/* size in u64 units */ + +/* + * EX_LR is only used in EXSLB and where it does not overlap with EX_DAR + * EX_CCR similarly with DSISR, but being 4 byte registers there is a hole + * in the save area so it's not necessary to overlap them. Could be used + * for future savings though if another 4 byte register was to be saved. + */ +#define EX_LR		EX_DAR  #ifdef CONFIG_RELOCATABLE  #define __EXCEPTION_RELON_PROLOG_PSERIES_1(label, h)			\ | 
