瀏覽代碼

microblaze: Move stack backup to SAVE_STATE macro

Remove code duplicity and move it to SAVE_STATE macro.
There is no impact on performance.

Signed-off-by: Michal Simek <monstr@monstr.eu>
Michal Simek 15 年之前
父節點
當前提交
63708f635c
共有 1 個文件被更改,包括 1 次插入4 次删除
  1. 1 4
      arch/microblaze/kernel/entry.S

+ 1 - 4
arch/microblaze/kernel/entry.S

@@ -505,6 +505,7 @@ C_ENTRY(sys_rt_sigreturn_wrapper):
  */
 
 #define SAVE_STATE	\
+	swi	r1, r0, TOPHYS(PER_CPU(ENTRY_SP)); /* save stack */	\
 	swi	r11, r0, TOPHYS(r0_ram + PTO + PT_R11); /* Save r11 */	\
 	set_bip;	/*equalize initial state for all possible entries*/\
 	clear_eip;							\
@@ -552,7 +553,6 @@ C_ENTRY(sys_rt_sigreturn_wrapper):
 	tovirt(r1,r1)
 
 C_ENTRY(full_exception_trap):
-	swi	r1, r0, TOPHYS(PER_CPU(ENTRY_SP)) /* save stack */
 	/* adjust exception address for privileged instruction
 	 * for finding where is it */
 	addik	r17, r17, -4
@@ -584,7 +584,6 @@ C_ENTRY(full_exception_trap):
  * The assembler routine is in "arch/microblaze/kernel/hw_exception_handler.S"
  */
 C_ENTRY(unaligned_data_trap):
-	swi	r1, r0, TOPHYS(PER_CPU(ENTRY_SP)) /* save stack */
 	SAVE_STATE		/* Save registers.*/
 	/* where the trap should return need -8 to adjust for rtsd r15, 8 */
 	la	r15, r0, ret_from_exc-8
@@ -617,7 +616,6 @@ C_ENTRY(unaligned_data_trap):
  */
 /* data and intruction trap - which is choose is resolved int fault.c */
 C_ENTRY(page_fault_data_trap):
-	swi	r1, r0, TOPHYS(PER_CPU(ENTRY_SP)) /* save stack */
 	SAVE_STATE		/* Save registers.*/
 	/* where the trap should return need -8 to adjust for rtsd r15, 8 */
 	la	r15, r0, ret_from_exc-8
@@ -632,7 +630,6 @@ C_ENTRY(page_fault_data_trap):
 	nop;
 
 C_ENTRY(page_fault_instr_trap):
-	swi	r1, r0, TOPHYS(PER_CPU(ENTRY_SP)) /* save stack */
 	SAVE_STATE		/* Save registers.*/
 	/* where the trap should return need -8 to adjust for rtsd r15, 8 */
 	la	r15, r0, ret_from_exc-8