mirror of https://gitee.com/openkylin/linux.git
powerpc/64s/exception: Add GEN_COMMON macro that uses INT_DEFINE parameters
No generated code change. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20200225173541.1549955-3-npiggin@gmail.com
This commit is contained in:
parent
a42a239db3
commit
7cb3a1a03e
|
@ -206,6 +206,9 @@ END_FTR_SECTION_NESTED(ftr,ftr,943)
|
|||
#define IMASK .L_IMASK_\name\()
|
||||
#define IKVM_REAL .L_IKVM_REAL_\name\()
|
||||
#define IKVM_VIRT .L_IKVM_VIRT_\name\()
|
||||
#define ISTACK .L_ISTACK_\name\()
|
||||
#define IRECONCILE .L_IRECONCILE_\name\()
|
||||
#define IKUAP .L_IKUAP_\name\()
|
||||
|
||||
#define INT_DEFINE_BEGIN(n) \
|
||||
.macro int_define_ ## n name
|
||||
|
@ -246,6 +249,15 @@ do_define_int n
|
|||
.ifndef IKVM_VIRT
|
||||
IKVM_VIRT=0
|
||||
.endif
|
||||
.ifndef ISTACK
|
||||
ISTACK=1
|
||||
.endif
|
||||
.ifndef IRECONCILE
|
||||
IRECONCILE=1
|
||||
.endif
|
||||
.ifndef IKUAP
|
||||
IKUAP=1
|
||||
.endif
|
||||
.endm
|
||||
|
||||
.macro INT_KVM_HANDLER name, vec, hsrr, area, skip
|
||||
|
@ -670,6 +682,10 @@ END_FTR_SECTION_NESTED(CPU_FTR_CFAR, CPU_FTR_CFAR, 66)
|
|||
.endif
|
||||
.endm
|
||||
|
||||
.macro GEN_COMMON name
|
||||
INT_COMMON IVEC, IAREA, ISTACK, IKUAP, IRECONCILE, IDAR, IDSISR
|
||||
.endm
|
||||
|
||||
/*
|
||||
* Restore all registers including H/SRR0/1 saved in a stack frame of a
|
||||
* standard exception.
|
||||
|
@ -1221,13 +1237,7 @@ EXC_VIRT_BEGIN(data_access, 0x4300, 0x80)
|
|||
EXC_VIRT_END(data_access, 0x4300, 0x80)
|
||||
INT_KVM_HANDLER data_access, 0x300, EXC_STD, PACA_EXGEN, 1
|
||||
EXC_COMMON_BEGIN(data_access_common)
|
||||
/*
|
||||
* Here r13 points to the paca, r9 contains the saved CR,
|
||||
* SRR0 and SRR1 are saved in r11 and r12,
|
||||
* r9 - r13 are saved in paca->exgen.
|
||||
* EX_DAR and EX_DSISR have saved DAR/DSISR
|
||||
*/
|
||||
INT_COMMON 0x300, PACA_EXGEN, 1, 1, 1, 1, 1
|
||||
GEN_COMMON data_access
|
||||
ld r4,_DAR(r1)
|
||||
ld r5,_DSISR(r1)
|
||||
BEGIN_MMU_FTR_SECTION
|
||||
|
|
Loading…
Reference in New Issue