Home | History | Annotate | Line # | Download | only in gdb
      1      1.1  christos /* Native-dependent code for modern i386 BSD's.
      2      1.1  christos 
      3  1.1.1.5  christos    Copyright (C) 2004-2024 Free Software Foundation, Inc.
      4      1.1  christos 
      5      1.1  christos    This file is part of GDB.
      6      1.1  christos 
      7      1.1  christos    This program is free software; you can redistribute it and/or modify
      8      1.1  christos    it under the terms of the GNU General Public License as published by
      9      1.1  christos    the Free Software Foundation; either version 3 of the License, or
     10      1.1  christos    (at your option) any later version.
     11      1.1  christos 
     12      1.1  christos    This program is distributed in the hope that it will be useful,
     13      1.1  christos    but WITHOUT ANY WARRANTY; without even the implied warranty of
     14      1.1  christos    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15      1.1  christos    GNU General Public License for more details.
     16      1.1  christos 
     17      1.1  christos    You should have received a copy of the GNU General Public License
     18      1.1  christos    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
     19      1.1  christos 
     20  1.1.1.6  christos #ifndef GDB_I386_BSD_NAT_H
     21  1.1.1.6  christos #define GDB_I386_BSD_NAT_H
     22      1.1  christos 
     23  1.1.1.2  christos #include "x86-bsd-nat.h"
     24      1.1  christos 
     25  1.1.1.2  christos /* Helper functions.  See definitions.  */
     26  1.1.1.2  christos extern void i386bsd_fetch_inferior_registers (struct regcache *regcache,
     27  1.1.1.2  christos 					      int regnum);
     28  1.1.1.2  christos extern void i386bsd_store_inferior_registers (struct regcache *regcache,
     29  1.1.1.2  christos 					      int regnum);
     30  1.1.1.2  christos 
     31  1.1.1.2  christos /* A prototype *BSD/i386 target.  */
     32  1.1.1.2  christos 
     33  1.1.1.2  christos template<typename BaseTarget>
     34  1.1.1.2  christos class i386_bsd_nat_target : public x86bsd_nat_target<BaseTarget>
     35  1.1.1.2  christos {
     36  1.1.1.2  christos public:
     37  1.1.1.2  christos   void fetch_registers (struct regcache *regcache, int regnum) override
     38  1.1.1.2  christos   { i386bsd_fetch_inferior_registers (regcache, regnum); }
     39  1.1.1.2  christos 
     40  1.1.1.2  christos   void store_registers (struct regcache *regcache, int regnum) override
     41  1.1.1.2  christos   { i386bsd_store_inferior_registers (regcache, regnum); }
     42  1.1.1.2  christos };
     43      1.1  christos 
     44  1.1.1.6  christos #endif /* GDB_I386_BSD_NAT_H */
     45