Skip to content

Commit

Permalink
Fill R3k load delay slots properly.
Browse files Browse the repository at this point in the history
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
Maciej W. Rozycki authored and Ralf Baechle committed Oct 29, 2005
1 parent 9678e28 commit d925c26
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions arch/mips/mm/tlbex.c
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down Expand Up @@ -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);
Expand Down Expand Up @@ -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);
Expand Down

0 comments on commit d925c26

Please sign in to comment.