]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - gdb/news-xdep.c
Initial creation of sourceware repository
[thirdparty/binutils-gdb.git] / gdb / news-xdep.c
1 /* Low level interface to ptrace, for GDB when running under Unix.
2 Copyright (C) 1986, 1987, 1989 Free Software Foundation, Inc.
3
4 This file is part of GDB.
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
19
20 #ifdef __GNUC__
21 /* Bad implement execle(3). It's depend for "/bin/cc".
22
23 main()
24 {
25 printf("execle:\n");
26 execle(FILE, ARGS, envp);
27 exit(1);
28 }
29
30 GCC:
31 link a6,#0
32 pea LC5 ; call printf
33 jbsr _printf
34 ; ; (not popd stack)
35 pea _envp ; call execle
36 clrl sp@-
37 pea LC4
38 pea LC4
39 pea LC4
40 pea LC3
41 pea LC6
42 jbsr _execle
43 addw #32,sp ; delayed pop !!
44
45 /bin/cc:
46 link.l fp,#L23
47 movem.l #L24,(sp)
48 pea L26 ; call printf
49 jbsr _printf
50 addq.l #4,sp ; <--- popd stack !!
51 pea _envp ; call execle
52 clr.l -(sp)
53 pea L32
54
55 */
56
57 execle(name, args)
58 char *name, *args;
59 {
60 register char **env = &args;
61 while (*env++)
62 ;
63 execve(name, (char **)&args, (char **)*env);
64 }
65 #endif