]> git.lizzy.rs Git - plan9front.git/blob - sys/src/boot/alphapc/l.s
fltfmt: %.0g should print with one significant figure
[plan9front.git] / sys / src / boot / alphapc / l.s
1 #include "mem.h"
2 #include "vmspal.h"
3
4 #define SP              R30
5
6 TEXT    _main(SB), $-8
7         MOVQ    $setSB(SB), R29
8         MOVQ    $edata(SB), R1
9         MOVQ    $end(SB), R2
10 loop2:
11         MOVQ    R31, (R1)
12         ADDQ    $8, R1
13         CMPUGT  R1, R2, R3
14         BEQ     R3, loop2
15
16         JSR     main(SB)
17
18 TEXT    firmware(SB), $-8
19         CALL_PAL $PALhalt
20         MOVQ    $_divq(SB), R31         /* touch _divq etc.; doesn't need to execute */
21         MOVQ    $_divl(SB), R31         /* touch _divl etc.; doesn't need to execute */
22         RET
23
24 TEXT    mb(SB), $-8
25         MB
26         RET
27
28 TEXT    icflush(SB), $-8
29         CALL_PAL $PALimb
30         RET
31
32 TEXT    tlbflush(SB), $-8
33         CALL_PAL $PALmtpr_tbia
34         RET
35
36 TEXT    gendispatch(SB), $-8
37         MOVQ    8(FP), R16
38         MOVQ    16(FP), R17
39         MOVQ    24(FP), R18
40         MOVQ    32(FP), R19
41         MOVQ    40(FP), R20
42         MOVQ    R26, R1
43         JSR     (R0)
44         MOVQ    R1, R26
45         RET                                     /* 7a bug: should be RET (R1) */
46
47 TEXT    rdv(SB), $-8
48         MOVQ    (R0), R0
49         RET
50
51 TEXT    wrv(SB), $-8
52         MOVQ    8(FP), R1
53         MOVQ    R1, (R0)
54         RET
55
56 TEXT    ipl(SB), $-8
57         CALL_PAL $PALmfpr_ipl
58         RET
59
60 TEXT    mces(SB), $-8
61         CALL_PAL $PALmfpr_mces
62         RET
63
64 TEXT    setipl(SB), $-8
65         MOVQ    R0, R16
66         CALL_PAL $PALmtpr_ipl
67         RET
68
69 TEXT    setmces(SB), $-8
70         MOVQ    R0, R16
71         CALL_PAL $PALmtpr_mces
72         RET
73
74 TEXT    ldqp(SB), $-8
75         MOVQ    R0, R16
76         CALL_PAL $PALldqp
77         RET
78
79 TEXT    stqp(SB), $-8
80         MOVQ    R0, R16
81         MOVQ    8(FP), R17
82         CALL_PAL $PALstqp
83         RET
84
85 TEXT    getptbr(SB), $-8
86         CALL_PAL $PALmfpr_ptbr
87         RET
88
89 TEXT    swppal(SB), $-8
90         MOVQ    R0, R16                 /* which PALcode */
91         MOVQ    8(FP), R17              /* new PC */
92         MOVQ    16(FP), R18             /* PCBB (physical) */
93         MOVQ    24(FP), R19             /* VPTB */
94         MOVQ    32(FP), R20             /* new KSP */
95         CALL_PAL $PALswppal
96         RET
97
98 TEXT    pcc_cnt(SB), $-8
99         MOVQ    PCC, R1
100         MOVL    R1, R0
101         RET