1 /* SPDX-License-Identifier: GPL-2.0 */ 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 .globl getcc 2 .globl getcc 3 .type getcc,#function 3 .type getcc,#function 4 getcc: 4 getcc: 5 ldx [%o0 + PT_V9_TSTATE], 5 ldx [%o0 + PT_V9_TSTATE], %o1 6 srlx %o1, 32, %o1 6 srlx %o1, 32, %o1 7 and %o1, 0xf, %o1 7 and %o1, 0xf, %o1 8 retl 8 retl 9 stx %o1, [%o0 + PT_V9_G1] 9 stx %o1, [%o0 + PT_V9_G1] 10 .size getcc,.-getcc 10 .size getcc,.-getcc 11 11 12 .globl setcc 12 .globl setcc 13 .type setcc,#function 13 .type setcc,#function 14 setcc: 14 setcc: 15 ldx [%o0 + PT_V9_TSTATE], 15 ldx [%o0 + PT_V9_TSTATE], %o1 16 ldx [%o0 + PT_V9_G1], %o2 16 ldx [%o0 + PT_V9_G1], %o2 17 or %g0, %ulo(TSTATE_ICC), 17 or %g0, %ulo(TSTATE_ICC), %o3 18 sllx %o3, 32, %o3 18 sllx %o3, 32, %o3 19 andn %o1, %o3, %o1 19 andn %o1, %o3, %o1 20 sllx %o2, 32, %o2 20 sllx %o2, 32, %o2 21 and %o2, %o3, %o2 21 and %o2, %o3, %o2 22 or %o1, %o2, %o1 22 or %o1, %o2, %o1 23 retl 23 retl 24 stx %o1, [%o0 + PT_V9_TSTA 24 stx %o1, [%o0 + PT_V9_TSTATE] 25 .size setcc,.-setcc 25 .size setcc,.-setcc
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.