1bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert/*
2bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * Copyright (C) 2014 The Android Open Source Project
3bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * All rights reserved.
4bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert *
5bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * Redistribution and use in source and binary forms, with or without
6bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * modification, are permitted provided that the following conditions
7bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * are met:
8bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert *  * Redistributions of source code must retain the above copyright
9bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert *    notice, this list of conditions and the following disclaimer.
10bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert *  * Redistributions in binary form must reproduce the above copyright
11bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert *    notice, this list of conditions and the following disclaimer in
12bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert *    the documentation and/or other materials provided with the
13bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert *    distribution.
14bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert *
15bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
16bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
17bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
18bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
19bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
20bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
21bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
22bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
23bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
25bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert * SUCH DAMAGE.
27bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert */
28bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert
29bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert#ifndef _SYS_PROCFS_H_
30bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert#define _SYS_PROCFS_H_
31bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert
32bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert#include <sys/cdefs.h>
33bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert#include <sys/ucontext.h>
34bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert
35bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert__BEGIN_DECLS
36bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert
37bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Alberttypedef unsigned long elf_greg_t;
38bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Alberttypedef elf_greg_t elf_gregset_t[NGREG];
39bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert
40bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Alberttypedef fpregset_t elf_fpregset_t;
41bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert
42fef58353f4ecd7ef2b48ad7f4d80013dbf786606Elliott Hughes#if defined(__i386__)
43fef58353f4ecd7ef2b48ad7f4d80013dbf786606Elliott Hughestypedef struct user_fpxregs_struct elf_fpxregset_t;
44fef58353f4ecd7ef2b48ad7f4d80013dbf786606Elliott Hughes#endif
45fef58353f4ecd7ef2b48ad7f4d80013dbf786606Elliott Hughes
46bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Alberttypedef elf_gregset_t prgregset_t;
47bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Alberttypedef elf_fpregset_t prfpregset_t;
48bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert
49895241efbba344c1590b76fcada89c48f4743cf2Elliott Hughestypedef pid_t lwpid_t;
50895241efbba344c1590b76fcada89c48f4743cf2Elliott Hughestypedef void* psaddr_t;
51895241efbba344c1590b76fcada89c48f4743cf2Elliott Hughes
528d307c9a302c5a8fb985d1ed29862bec77aaf7c8Elliott Hughesstruct elf_siginfo {
538d307c9a302c5a8fb985d1ed29862bec77aaf7c8Elliott Hughes  int si_signo;
548d307c9a302c5a8fb985d1ed29862bec77aaf7c8Elliott Hughes  int si_code;
558d307c9a302c5a8fb985d1ed29862bec77aaf7c8Elliott Hughes  int si_errno;
568d307c9a302c5a8fb985d1ed29862bec77aaf7c8Elliott Hughes};
578d307c9a302c5a8fb985d1ed29862bec77aaf7c8Elliott Hughes
588d307c9a302c5a8fb985d1ed29862bec77aaf7c8Elliott Hughes#define ELF_PRARGSZ 80
598d307c9a302c5a8fb985d1ed29862bec77aaf7c8Elliott Hughes
60bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert__END_DECLS
61bf18c61798d1ae9197ae087ed85e94eef55e8678Dan Albert
62ff26a16c1de7be696719e9001f0707b7c55b52cfElliott Hughes#endif
63