include/elf/
[deliverable/binutils-gdb.git] / gdb / gdb_proc_service.h
CommitLineData
110be7c9 1/* <proc_service.h> replacement for systems that don't have it.
7b6bb8da
JB
2 Copyright (C) 2000, 2007, 2008, 2009, 2010, 2011
3 Free Software Foundation, Inc.
110be7c9
MK
4
5 This file is part of GDB.
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
a9762ec7 9 the Free Software Foundation; either version 3 of the License, or
110be7c9
MK
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
a9762ec7 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
110be7c9
MK
19
20#ifndef GDB_PROC_SERVICE_H
21#define GDB_PROC_SERVICE_H
22
23#include <sys/types.h>
24
25#ifdef HAVE_PROC_SERVICE_H
26#include <proc_service.h>
27#else
28
29#ifdef HAVE_SYS_PROCFS_H
30#include <sys/procfs.h>
31#endif
32
33#include "gregset.h"
34
35typedef enum
36{
37 PS_OK, /* Success. */
38 PS_ERR, /* Generic error. */
39 PS_BADPID, /* Bad process handle. */
40 PS_BADLID, /* Bad LWP id. */
41 PS_BADADDR, /* Bad address. */
42 PS_NOSYM, /* Symbol not found. */
43 PS_NOFREGS /* FPU register set not available. */
44} ps_err_e;
ed9a39eb 45
83d37ec8 46#ifndef HAVE_LWPID_T
110be7c9 47typedef unsigned int lwpid_t;
83d37ec8
MK
48#endif
49
83d37ec8 50#ifndef HAVE_PSADDR_T
00f515da 51typedef void *psaddr_t;
83d37ec8 52#endif
ed9a39eb 53
83d37ec8 54#ifndef HAVE_PRGREGSET_T
110be7c9 55typedef gdb_gregset_t prgregset_t;
83d37ec8 56#endif
ed9a39eb 57
83d37ec8 58#ifndef HAVE_PRFPREGSET_T
110be7c9
MK
59typedef gdb_fpregset_t prfpregset_t;
60#endif
61
62#endif /* HAVE_PROC_SERVICE_H */
63
64/* Fix-up some broken systems. */
65
66/* Unfortunately glibc 2.1.3 was released with a broken prfpregset_t
67 type. We let configure check for this lossage, and make
68 appropriate typedefs here. */
69
70#ifdef PRFPREGSET_T_BROKEN
71typedef gdb_fpregset_t gdb_prfpregset_t;
72#else
73typedef prfpregset_t gdb_prfpregset_t;
83d37ec8 74#endif
ed9a39eb 75
110be7c9
MK
76/* Structure that identifies the target process. */
77struct ps_prochandle
78{
93a91755
PA
79 /* The LWP we use for memory reads. */
80 ptid_t ptid;
110be7c9
MK
81};
82
83#endif /* gdb_proc_service.h */
This page took 0.742895 seconds and 4 git commands to generate.