Changeset 189 for soft/giet_vm/sys/vm_handler.c
- Timestamp:
- Aug 7, 2012, 6:37:49 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
soft/giet_vm/sys/vm_handler.c
r184 r189 118 118 119 119 // gets ppn_value and flags_value, after temporary DTLB desactivation 120 asm volatile ( 121 "li $27, 0xFFFFFFFE \n" /* Mask for IE bits */ 122 "mfc0 $8, $12 \n" /* $8 <= SR */ 123 "and $26, $8, $27 \n" /* $26 <= SR && 0xFFFFFFE */ 124 "mtc0 $26, $12 \n" /* disable Interrupts */ 120 asm volatile ( "li $27, 0xFFFFFFFE \n" /* Mask for IE bits */ 121 "mfc0 $26, $12 \n" /* save SR */ 122 "and $27, $26, $27 \n" 123 "mtc0 $27, $12 \n" /* disable Interrupts */ 124 125 "li $27, 0xB \n" 126 "mtc2 $27, $1 \n" /* DTLB unactivated */ 125 127 126 128 "move $27, %2 \n" /* $27 <= pte2 */ 127 "li $26, 0xB \n" /* DTLB unactivated */128 "mtc2 $26, $1 \n"129 129 "lw %0, 0($27) \n" /* read flags */ 130 130 "lw %1, 4($27) \n" /* read ppn */ 131 "li $26, 0xF \n"132 "mtc2 $26, $1 \n" /* DTLB activated */133 131 134 "or $26, $8, $0 \n" /* SR previous state */ 132 "li $27, 0xF \n" 133 "mtc2 $27, $1 \n" /* DTLB activated */ 134 135 "mtc0 $26, $12 \n" /* restore SR */ 135 136 :"=r"(flags_value), "=r"(ppn_value) 136 137 :"r"(pte2)
Note: See TracChangeset
for help on using the changeset viewer.