Commit d925c262 authored by Maciej W. Rozycki's avatar Maciej W. Rozycki Committed by Ralf Baechle
Browse files

Fill R3k load delay slots properly.

parent 9678e28b
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -1486,6 +1486,7 @@ static void __init build_r3000_tlb_load_handler(void)

	build_r3000_tlbchange_handler_head(&p, K0, K1);
	build_pte_present(&p, &l, &r, K0, K1, label_nopage_tlbl);
	i_nop(&p); /* load delay */
	build_make_valid(&p, &r, K0, K1);
	build_r3000_pte_reload(&p, K1);
	build_r3000_tlb_write(&p, &l, &r, K0);
@@ -1527,6 +1528,7 @@ static void __init build_r3000_tlb_store_handler(void)

	build_r3000_tlbchange_handler_head(&p, K0, K1);
	build_pte_writable(&p, &l, &r, K0, K1, label_nopage_tlbs);
	i_nop(&p); /* load delay */
	build_make_write(&p, &r, K0, K1);
	build_r3000_pte_reload(&p, K1);
	build_r3000_tlb_write(&p, &l, &r, K0);
@@ -1568,6 +1570,7 @@ static void __init build_r3000_tlb_modify_handler(void)

	build_r3000_tlbchange_handler_head(&p, K0, K1);
	build_pte_modifiable(&p, &l, &r, K0, K1, label_nopage_tlbm);
	i_nop(&p); /* load delay */
	build_make_write(&p, &r, K0, K1);
	build_r3000_pte_reload(&p, K1);
	i_tlbwi(&p);