1*cf84ac9aSAndroid Build Coastguard Worker #ifndef HAVE_GETREGS_OLD 2*cf84ac9aSAndroid Build Coastguard Worker # define arch_set_scno i386_set_scno 3*cf84ac9aSAndroid Build Coastguard Worker # include "i386/set_scno.c" 4*cf84ac9aSAndroid Build Coastguard Worker # undef arch_set_scno 5*cf84ac9aSAndroid Build Coastguard Worker #endif /* !HAVE_GETREGS_OLD */ 6*cf84ac9aSAndroid Build Coastguard Worker 7*cf84ac9aSAndroid Build Coastguard Worker static int arch_set_scno(struct tcb * tcp,kernel_ulong_t scno)8*cf84ac9aSAndroid Build Coastguard Workerarch_set_scno(struct tcb *tcp, kernel_ulong_t scno) 9*cf84ac9aSAndroid Build Coastguard Worker { 10*cf84ac9aSAndroid Build Coastguard Worker #ifdef HAVE_GETREGS_OLD 11*cf84ac9aSAndroid Build Coastguard Worker return upoke(tcp, 8 * ORIG_RAX, scno); 12*cf84ac9aSAndroid Build Coastguard Worker #else 13*cf84ac9aSAndroid Build Coastguard Worker if (x86_io.iov_len == sizeof(i386_regs)) 14*cf84ac9aSAndroid Build Coastguard Worker return i386_set_scno(tcp, scno); 15*cf84ac9aSAndroid Build Coastguard Worker 16*cf84ac9aSAndroid Build Coastguard Worker x86_64_regs.orig_rax = scno; 17*cf84ac9aSAndroid Build Coastguard Worker return set_regs(tcp->pid); 18*cf84ac9aSAndroid Build Coastguard Worker #endif 19*cf84ac9aSAndroid Build Coastguard Worker } 20