zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

procfs.h (1580B) - Raw


      1 /* Types for registers for sys/procfs.h.  C-SKY version.
      2    Copyright (C) 2018-2025 Free Software Foundation, Inc.
      3    This file is part of the GNU C Library.
      4 
      5    The GNU C Library is free software; you can redistribute it and/or
      6    modify it under the terms of the GNU Lesser General Public
      7    License as published by the Free Software Foundation; either
      8    version 2.1 of the License, or (at your option) any later version.
      9 
     10    The GNU C Library is distributed in the hope that it will be useful,
     11    but WITHOUT ANY WARRANTY; without even the implied warranty of
     12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     13    Lesser General Public License for more details.
     14 
     15    You should have received a copy of the GNU Lesser General Public
     16    License along with the GNU C Library.  If not, see
     17    <https://www.gnu.org/licenses/>.  */
     18 
     19 #ifndef _SYS_PROCFS_H
     20 # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead."
     21 #endif
     22 
     23 #include <asm/ptrace.h>
     24 
     25 /* Type for a general-purpose register.  */
     26 typedef unsigned long elf_greg_t;
     27 /* Type for a floating-point registers.  */
     28 typedef unsigned long elf_fpreg_t;
     29 
     30 /* In gdb/bfd elf32-csky.c, csky_elf_grok_prstatus() use fixed size of
     31    elf_prstatus.  It's 148 for abiv1 and 220 for abiv2, the size is enough
     32    for coredump and no need full sizeof (struct pt_regs).  */
     33 #define ELF_NGREG ((sizeof (struct pt_regs) / sizeof (elf_greg_t)) - 2)
     34 typedef elf_greg_t elf_gregset_t[ELF_NGREG];
     35 
     36 #define ELF_NFPREG (sizeof (struct user_fp) / sizeof (elf_fpreg_t))
     37 typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];