Commit 12f8311e authored by Jun Yi's avatar Jun Yi Committed by Hongchen Zhang
Browse files

LoongArch: Remove redudant csr save/restore

LoongArch inclusion
category: feature
bugzilla: https://gitee.com/openeuler/kernel/issues/I6BWFP



--------------------------------

Signed-off-by: default avatarJun Yi <yijun@loongson.cn>
Change-Id: Ib034b577cbebbbe56e936bf541348db271c2a9db
parent f0c990f8
Loading
Loading
Loading
Loading
+0 −9
Original line number Diff line number Diff line
@@ -114,14 +114,6 @@
	LONG_S	zero, sp, PT_R0
	csrrd	t0, LOONGARCH_CSR_PRMD
	LONG_S	t0, sp, PT_PRMD
	csrrd	t0, LOONGARCH_CSR_CRMD
	LONG_S	t0, sp, PT_CRMD
	csrrd	t0, LOONGARCH_CSR_EUEN
	LONG_S  t0, sp, PT_EUEN
	csrrd	t0, LOONGARCH_CSR_ECFG
	LONG_S	t0, sp, PT_ECFG
	csrrd	t0, LOONGARCH_CSR_ESTAT
	PTR_S	t0, sp, PT_ESTAT
	cfi_st	ra, PT_R1, \docfi
	cfi_st	a0, PT_R4, \docfi
	cfi_st	a1, PT_R5, \docfi
@@ -140,7 +132,6 @@
	cfi_st	fp, PT_R22, \docfi

	/* Set thread_info if we're coming from user mode */
	csrrd	t0, LOONGARCH_CSR_PRMD
	andi	t0, t0, 0x3	/* extract pplv bit */
	beqz	t0, 9f

+0 −8
Original line number Diff line number Diff line
@@ -31,14 +31,6 @@ SYM_FUNC_START(handle_syscall)
	st.d	zero, sp, PT_R0
	csrrd	t2, LOONGARCH_CSR_PRMD
	st.d	t2, sp, PT_PRMD
	csrrd	t2, LOONGARCH_CSR_CRMD
	st.d	t2, sp, PT_CRMD
	csrrd	t2, LOONGARCH_CSR_EUEN
	st.d	t2, sp, PT_EUEN
	csrrd	t2, LOONGARCH_CSR_ECFG
	st.d	t2, sp, PT_ECFG
	csrrd	t2, LOONGARCH_CSR_ESTAT
	st.d	t2, sp, PT_ESTAT
	cfi_st	ra, PT_R1
	cfi_st	a0, PT_R4
	cfi_st	a1, PT_R5
+0 −6
Original line number Diff line number Diff line
@@ -16,9 +16,6 @@
 */
	.align	5
SYM_FUNC_START(__switch_to)
	csrrd	t1, LOONGARCH_CSR_PRMD
	stptr.d	t1, a0, THREAD_CSRPRMD

	cpu_save_nonscratch a0
	stptr.d	ra, a0, THREAD_REG01
	stptr.d a3, a0, THREAD_SCHED_RA
@@ -30,8 +27,5 @@ SYM_FUNC_START(__switch_to)
	PTR_ADD		t0, t0, tp
	set_saved_sp	t0, t1, t2

	ldptr.d	t1, a1, THREAD_CSRPRMD
	csrwr	t1, LOONGARCH_CSR_PRMD

	jr	ra
SYM_FUNC_END(__switch_to)