diff --git a/sys/src/cmd/5l/asm.c b/sys/src/cmd/5l/asm.c index 46e07ebc5..81f5e7f55 100644 --- a/sys/src/cmd/5l/asm.c +++ b/sys/src/cmd/5l/asm.c @@ -1522,6 +1522,7 @@ oprrr(int a, int sc) case ASLL: return o | (0xd<<21) | (0<<5); case ASRL: return o | (0xd<<21) | (1<<5); case ASRA: return o | (0xd<<21) | (2<<5); + case AROR: return o | (0xd<<21) | (3<<5); case ASWI: return o | (0xf<<24); /* old arm 7500 fp using coproc 1 (1<<8) */ diff --git a/sys/src/cmd/5l/sched.c b/sys/src/cmd/5l/sched.c index cad8491d1..4dfe7d62b 100644 --- a/sys/src/cmd/5l/sched.c +++ b/sys/src/cmd/5l/sched.c @@ -288,6 +288,7 @@ regused(Sch *s, Prog *realp) case ASLL: case ASRA: case ASRL: + case AROR: case ASUB: case AEOR: diff --git a/sys/src/cmd/5l/span.c b/sys/src/cmd/5l/span.c index 17565e8fe..3cbe787ab 100644 --- a/sys/src/cmd/5l/span.c +++ b/sys/src/cmd/5l/span.c @@ -726,6 +726,7 @@ buildop(void) case ASLL: oprange[ASRL] = oprange[r]; oprange[ASRA] = oprange[r]; + oprange[AROR] = oprange[r]; break; case AMUL: oprange[AMULU] = oprange[r];