1 | /* |
---|---|
2 | * Sparc v9 has divide. |
3 | * As divx takes 68 cycles and udiv only 37, |
4 | * we use udiv even though it is deprecated. |
5 | */ |
6 | |
7 | #include <sysdep.h> |
8 | |
9 | .text |
10 | .align 32 |
11 | ENTRY(.urem) |
12 | |
13 | wr %g0, 0, %y |
14 | udiv %o0, %o1, %o2 |
15 | umul %o2, %o1, %o2 |
16 | retl |
17 | sub %o0, %o2, %o0 |
18 | |
19 | END(.urem) |
20 |