| plan 9 kernel history: overview | file list | diff list |
1991/01151/ss/l.s (diff list | history)
| 1991/0115/sys/src/9/ss/l.s:21,26 – 1991/01151/sys/src/9/ss/l.s:21,51 (short | long | prev | next) | ||
| 1990/1223 | TEXT startvirt(SB), $-4 | |
| 1990/1226 | MOVW $BOOTSTACK, R1 | |
| 1991/01151 | MOVW $(SPL(0xF)|PSREF|PSRSUPER), R7 MOVW R7, PSR MOVW $(0x35<<22), R7 /* NVM OFM DZM AU */ MOVW R7, fsr+0(SB) MOVW fsr+0(SB), FSR FMOVD $0.5, F26 /* 0.5 -> F26 */ FSUBD F26, F26, F24 /* 0.0 -> F24 */ FADDD F26, F26, F28 /* 1.0 -> F28 */ FADDD F28, F28, F30 /* 2.0 -> F30 */ FMOVD F24, F0 FMOVD F24, F2 FMOVD F24, F4 FMOVD F24, F6 FMOVD F24, F8 FMOVD F24, F10 FMOVD F24, F12 FMOVD F24, F14 FMOVD F24, F16 FMOVD F24, F18 FMOVD F24, F20 FMOVD F24, F22 | |
| 1990/1223 | MOVW $mach0(SB), R(MACH) | |
| 1990/1226 | MOVW $0x8, R7 MOVW R7, WIM | |
| 1991/0115/sys/src/9/ss/l.s:93,99 – 1991/01151/sys/src/9/ss/l.s:118,124 | ||
| 1990/1226 | TEXT touser(SB), $-4 | |
| 1991/0110 |
| |
| 1991/01151 | MOVW $(SYSPSR&~PSREF), R7 | |
| 1990/1226 | MOVW R7, PSR OR R0, R0 | |
| 1991/0115/sys/src/9/ss/l.s:167,173 – 1991/01151/sys/src/9/ss/l.s:192,198 | ||
| 1990/1226 | OR R0, R0 OR R0, R0 OR R0, R0 | |
| 1991/01151 | JMPL trap(SB) | |
| 1990/1226 | ADD $8, R1 | |
| 1991/0112 | restore: | |
| 1991/0115/sys/src/9/ss/l.s:461,470 – 1991/01151/sys/src/9/ss/l.s:486,558 | ||
| 1990/1227 | MOVW R8, (R7, 3) | |
| 1990/1223 | RETURN | |
| 1991/01151 | TEXT savefpregs(SB), $0 MOVW 0(FP), R7 MOVW FSR, 0(R7) ADD $(4+7), R7 /* double-align so can MOVD */ ANDN $7, R7 MOVD F0, (0*4)(R7) MOVD F2, (2*4)(R7) MOVD F4, (4*4)(R7) MOVD F6, (6*4)(R7) MOVD F8, (8*4)(R7) MOVD F10, (10*4)(R7) MOVD F12, (12*4)(R7) MOVD F14, (14*4)(R7) MOVD F16, (16*4)(R7) MOVD F18, (18*4)(R7) MOVD F20, (20*4)(R7) MOVD F22, (22*4)(R7) MOVD F24, (24*4)(R7) MOVD F26, (26*4)(R7) MOVD F28, (28*4)(R7) MOVD F30, (30*4)(R7) MOVW PSR, R8 ANDN $PSREF, R8 MOVW R8, PSR RETURN TEXT restfpregs(SB), $0 MOVW PSR, R8 OR $PSREF, R8 MOVW R8, PSR MOVW 0(FP), R7 MOVW (R7), FSR ADD $(4+7), R7 /* double-align so can MOVD */ ANDN $7, R7 MOVD (0*4)(R7), F0 MOVD (2*4)(R7), F2 MOVD (4*4)(R7), F4 MOVD (6*4)(R7), F6 MOVD (8*4)(R7), F8 MOVD (10*4)(R7), F10 MOVD (12*4)(R7), F12 MOVD (14*4)(R7), F14 MOVD (16*4)(R7), F16 MOVD (18*4)(R7), F18 MOVD (20*4)(R7), F20 MOVD (22*4)(R7), F22 MOVD (24*4)(R7), F24 MOVD (26*4)(R7), F26 MOVD (28*4)(R7), F28 MOVD (30*4)(R7), F30 ANDN $PSREF, R8 MOVW R8, PSR RETURN | |
| 1991/0115 | TEXT clearfpintr(SB), $0 MOVW $fpq+BY2WD(SB), R7 ANDN $0x7, R7 /* must be D aligned */ | |
| 1991/01151 | MOVW $fsr+0(SB), R9 | |
| 1991/0115 | clrq: MOVD FQ, (R7) MOVW FSR, (R9) | |
| 1991/0115/sys/src/9/ss/l.s:474,480 – 1991/01151/sys/src/9/ss/l.s:562,568 | ||
| 1991/0115 | RETURN TEXT getfsr(SB), $0 | |
| 1991/01151 | MOVW $fsr+0(SB), R7 | |
| 1991/0115 | MOVW FSR, (R7) MOVW (R7), R7 RETURN | |
| 1991/0115/sys/src/9/ss/l.s:481,484 – 1991/01151/sys/src/9/ss/l.s:569,572 | ||
| 1991/0115 | ||
| 1990/1223 | GLOBL mach0+0(SB), $MACHSIZE | |
| 1991/0115 | GLOBL fpq+0(SB), $(3*BY2WD) | |
| 1991/01151 | GLOBL fsr+0(SB), $BY2WD | |