Commit 6d18f29c authored by Nicholas Piggin's avatar Nicholas Piggin Committed by Michael Ellerman
Browse files

powerpc/64s/exception: remove STD_EXCEPTION_COMMON variants



These are only called in one place each.

No generated code change.

Signed-off-by: default avatarNicholas Piggin <npiggin@gmail.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent f0ac4478
Loading
Loading
Loading
Loading
+0 −22
Original line number Diff line number Diff line
@@ -560,28 +560,6 @@ END_FTR_SECTION_IFSET(CPU_FTR_CTRL)
	EXCEPTION_PROLOG_COMMON_2(area);			\
	EXCEPTION_PROLOG_COMMON_3(trap)

#define STD_EXCEPTION_COMMON(trap, hdlr)			\
	EXCEPTION_COMMON(PACA_EXGEN, trap);			\
	bl	save_nvgprs;					\
	RECONCILE_IRQ_STATE(r10, r11);				\
	addi	r3,r1,STACK_FRAME_OVERHEAD;			\
	bl	hdlr;						\
	b	ret_from_except

/*
 * Like STD_EXCEPTION_COMMON, but for exceptions that can occur
 * in the idle task and therefore need the special idle handling
 * (finish nap and runlatch)
 */
#define STD_EXCEPTION_COMMON_ASYNC(trap, hdlr)			\
	EXCEPTION_COMMON(PACA_EXGEN, trap);			\
	FINISH_NAP;						\
	RECONCILE_IRQ_STATE(r10, r11);				\
	RUNLATCH_ON;						\
	addi	r3,r1,STACK_FRAME_OVERHEAD;			\
	bl	hdlr;						\
	b	ret_from_except_lite

/*
 * When the idle code in power4_idle puts the CPU into NAP mode,
 * it has to do so in a loop, and relies on the external interrupt
+17 −2
Original line number Diff line number Diff line
@@ -441,11 +441,26 @@ end_##sname:

#define EXC_COMMON(name, realvec, hdlr)					\
	EXC_COMMON_BEGIN(name);						\
	STD_EXCEPTION_COMMON(realvec, hdlr)
	EXCEPTION_COMMON(PACA_EXGEN, realvec);				\
	bl	save_nvgprs;						\
	RECONCILE_IRQ_STATE(r10, r11);					\
	addi	r3,r1,STACK_FRAME_OVERHEAD;				\
	bl	hdlr;							\
	b	ret_from_except

/*
 * Like EXC_COMMON, but for exceptions that can occur in the idle task and
 * therefore need the special idle handling (finish nap and runlatch)
 */
#define EXC_COMMON_ASYNC(name, realvec, hdlr)				\
	EXC_COMMON_BEGIN(name);						\
	STD_EXCEPTION_COMMON_ASYNC(realvec, hdlr)
	EXCEPTION_COMMON(PACA_EXGEN, realvec);				\
	FINISH_NAP;							\
	RECONCILE_IRQ_STATE(r10, r11);					\
	RUNLATCH_ON;							\
	addi	r3,r1,STACK_FRAME_OVERHEAD;				\
	bl	hdlr;							\
	b	ret_from_except_lite

#endif /* __ASSEMBLY__ */