1/* $NetBSD: ptrace.S,v 1.3 2000/02/23 20:16:57 kleink Exp $ */ 2 3#include "SYS.h" 4 5ENTRY(ptrace) 6#ifdef _REENTRANT 7 mflr 0 8 stwu 1,-32(1) 9 stw 0,36(1) 10 stw 3,8(1) 11 stw 4,12(1) 12 stw 5,16(1) 13 stw 6,20(1) 14 15 bl PIC_PLT(_C_LABEL(__errno)) 16 li 7,0 17 stw 7,0(3) 18 19 lwz 3,8(1) 20 lwz 4,12(1) 21 lwz 5,16(1) 22 lwz 0,36(1) 23 lwz 6,20(1) 24 mtlr 0 25 la 1,32(1) 26#else 27#ifdef PIC 28 mflr 0 29 bl _GLOBAL_OFFSET_TABLE_@local-4 30 mflr 7 31 lwz 7,_C_LABEL(errno)@got(7) 32 li 8,0 33 stw 8,0(7) 34 mtlr 0 35#else 36 lis 7,_C_LABEL(errno)@ha 37 li 8,0 38 stw 8,_C_LABEL(errno)@l(7) 39#endif /* PIC */ 40#endif /* _REENTRANT */ 41 li 0,SYS_ptrace 42 sc 43 bso 1f 44 blr 451: 46 b PIC_PLT(_C_LABEL(__cerror)) 47