]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - gdb/news-xdep.c
import gdb-1999-07-07 post reformat
[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,
19 Boston, MA 02111-1307, USA. */
20
21 #ifdef __GNUC__
22 /* Bad implement execle(3). It's depend for "/bin/cc".
23
24 main()
25 {
26 printf("execle:\n");
27 execle(FILE, ARGS, envp);
28 exit(1);
29 }
30
31 GCC:
32 link a6,#0
33 pea LC5 ; call printf
34 jbsr _printf
35 ; ; (not popd stack)
36 pea _envp ; call execle
37 clrl sp@-
38 pea LC4
39 pea LC4
40 pea LC4
41 pea LC3
42 pea LC6
43 jbsr _execle
44 addw #32,sp ; delayed pop !!
45
46 /bin/cc:
47 link.l fp,#L23
48 movem.l #L24,(sp)
49 pea L26 ; call printf
50 jbsr _printf
51 addq.l #4,sp ; <--- popd stack !!
52 pea _envp ; call execle
53 clr.l -(sp)
54 pea L32
55
56 */
57
58 execle (name, args)
59 char *name, *args;
60 {
61 register char **env = &args;
62 while (*env++)
63 ;
64 execve (name, (char **) &args, (char **) *env);
65 }
66 #endif