summaryrefslogtreecommitdiff
path: root/sys/src/cmd/vmx/io.c
diff options
context:
space:
mode:
authorSigrid <ftrvxmtrx@gmail.com>2020-07-31 15:48:54 +0200
committerSigrid <ftrvxmtrx@gmail.com>2020-07-31 15:48:54 +0200
commit853f0e33fe744d816d66276491c34f9bccd4e6e3 (patch)
treeb2ef3bcf867563862f3f2d7c0821062bdddb178f /sys/src/cmd/vmx/io.c
parentde27182a8ebe759bebfb7b123dffbb0f29eea922 (diff)
vmx(1): use cycles() instead of nsec() when possible
this provides better timing and reduced number of syscalls (~2.7M old vs ~35K new in a test)
Diffstat (limited to 'sys/src/cmd/vmx/io.c')
-rw-r--r--sys/src/cmd/vmx/io.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/sys/src/cmd/vmx/io.c b/sys/src/cmd/vmx/io.c
index 6d91b7503..2de8fe605 100644
--- a/sys/src/cmd/vmx/io.c
+++ b/sys/src/cmd/vmx/io.c
@@ -31,7 +31,7 @@ rtcadvance(void)
vlong t;
if(rtcnext != -1){
- t = nsec();
+ t = nanosec();
if(t >= rtcnext){
cmos[0xc] |= 0x40;
rtcnext = -1;
@@ -58,7 +58,7 @@ rtcset(void)
default: d = 4 + (cmos[0xa] & 0xf);
}
b = (1000000000ULL << d) / 1048576;
- t = nsec();
+ t = nanosec();
rtcnext = t + b - t % b;
settimer(rtcnext);
}
@@ -464,7 +464,7 @@ pitadvance(void)
for(i = 0; i < 3; i++){
p = &pit[i];
- nt = nsec();
+ nt = nanosec();
t = nt - p->lastnsec;
p->lastnsec = nt;
switch(p->mode){
@@ -533,7 +533,7 @@ pitsetreload(int n, int hi, u8int v)
if(p->access != 3 || hi){
p->count = p->reload;
p->state = 1;
- p->lastnsec = nsec();
+ p->lastnsec = nanosec();
settimer(p->lastnsec + p->count * PERIOD);
}else
p->state = 0;
@@ -543,7 +543,7 @@ pitsetreload(int n, int hi, u8int v)
if(p->state == 0 && (p->access != 3 || hi)){
p->count = p->reload;
p->state = 1;
- p->lastnsec = nsec();
+ p->lastnsec = nanosec();
pitadvance();
}
break;
@@ -621,7 +621,7 @@ pitio(int isin, u16int port, u32int val, int sz, void *)
pit[n].reload = 0;
pit[n].readstate = pit[n].access == 1 ? READHI : READLO;
pit[n].writestate = pit[n].access == 1 ? READHI : READLO;
- pit[n].lastnsec = nsec();
+ pit[n].lastnsec = nanosec();
switch(pit[n].mode){
case 0:
pitout(n, 0);