89
89
__CALL_PAL_RW2(wrperfmon, unsigned long, unsigned long, unsigned long);
90
90
__CALL_PAL_W1(wrusp, unsigned long);
91
91
__CALL_PAL_W1(wrvptptr, unsigned long);
92
__CALL_PAL_RW1(wtint, unsigned long, unsigned long);
111
112
#define tbiap() __tbi(-1, /* no second argument */)
112
113
#define tbia() __tbi(-2, /* no second argument */)
116
* QEMU Cserv routines..
119
static inline unsigned long
120
qemu_get_walltime(void)
122
register unsigned long v0 __asm__("$0");
123
register unsigned long a0 __asm__("$16") = 3;
125
asm("call_pal %2 # cserve get_time"
128
: "$17", "$18", "$19", "$20", "$21");
133
static inline unsigned long
136
register unsigned long v0 __asm__("$0");
137
register unsigned long a0 __asm__("$16") = 4;
139
asm("call_pal %2 # cserve get_alarm"
142
: "$17", "$18", "$19", "$20", "$21");
148
qemu_set_alarm_rel(unsigned long expire)
150
register unsigned long a0 __asm__("$16") = 5;
151
register unsigned long a1 __asm__("$17") = expire;
153
asm volatile("call_pal %2 # cserve set_alarm_rel"
156
: "$0", "$18", "$19", "$20", "$21");
160
qemu_set_alarm_abs(unsigned long expire)
162
register unsigned long a0 __asm__("$16") = 6;
163
register unsigned long a1 __asm__("$17") = expire;
165
asm volatile("call_pal %2 # cserve set_alarm_abs"
168
: "$0", "$18", "$19", "$20", "$21");
171
static inline unsigned long
172
qemu_get_vmtime(void)
174
register unsigned long v0 __asm__("$0");
175
register unsigned long a0 __asm__("$16") = 7;
177
asm("call_pal %2 # cserve get_time"
180
: "$17", "$18", "$19", "$20", "$21");
114
185
#endif /* !__ASSEMBLY__ */
115
186
#endif /* __ALPHA_PAL_H */