/* SPDX-License-Identifier: GPL-2.0 */ #include <basic_asm.h> #include <asm/unistd.h> .text FUNC_START(getppid_tm_active) tbegin. beq 1f li r0, __NR_getppid sc tend. blr 1: li r3, -1 blr FUNC_START(getppid_tm_suspended) tbegin. beq 1f li r0, __NR_getppid tsuspend. sc tresume. tend. blr 1: li r3, -1 blr .macro scv level .long (0x44000001 | (\level) << 5) .endm FUNC_START(getppid_scv_tm_active) PUSH_BASIC_STACK(0) tbegin. beq 1f li r0, __NR_getppid scv 0 tend. POP_BASIC_STACK(0) blr 1: li r3, -1 POP_BASIC_STACK(0) blr FUNC_START(getppid_scv_tm_suspended) PUSH_BASIC_STACK(0) tbegin. beq 1f li r0, __NR_getppid tsuspend. scv 0 tresume. tend. POP_BASIC_STACK(0) blr 1: li r3, -1 POP_BASIC_STACK(0) blr