| 1 | /* SPDX-License-Identifier: GPL-2.0 */
|
| 2 | .globl getcc
|
| 3 | .type getcc, |
| 4 | getcc:
|
| 5 | ldx [%o0 + PT_V9_TSTATE], %o1
|
| 6 | srlx %o1, 32, %o1
|
| 7 | and %o1, 0xf, %o1
|
| 8 | retl
|
| 9 | stx %o1, [%o0 + PT_V9_G1]
|
| 10 | .size getcc,.-getcc
|
| 11 |
|
| 12 | .globl setcc
|
| 13 | .type setcc, |
| 14 | setcc:
|
| 15 | ldx [%o0 + PT_V9_TSTATE], %o1
|
| 16 | ldx [%o0 + PT_V9_G1], %o2
|
| 17 | or %g0, %ulo(TSTATE_ICC), %o3
|
| 18 | sllx %o3, 32, %o3
|
| 19 | andn %o1, %o3, %o1
|
| 20 | sllx %o2, 32, %o2
|
| 21 | and %o2, %o3, %o2
|
| 22 | or %o1, %o2, %o1
|
| 23 | retl
|
| 24 | stx %o1, [%o0 + PT_V9_TSTATE]
|
| 25 | .size setcc,.-setcc
|