gdb/
[deliverable/binutils-gdb.git] / gdb / i386-tdep.h
index 4d0bae783de583a9d398bac3572c1afbafabd538..5f233f590fe61a85f15e0a8ff14af19d88d80be5 100644 (file)
@@ -1,7 +1,6 @@
 /* Target-dependent code for the i386.
 
-   Copyright (C) 2001, 2002, 2003, 2004, 2006, 2007, 2008, 2009, 2010
-   Free Software Foundation, Inc.
+   Copyright (C) 2001-2004, 2006-2012 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -157,8 +156,8 @@ struct gdbarch_tdep
   int num_xmm_regs;
 
   /* Bits of the extended control register 0 (the XFEATURE_ENABLED_MASK
-     register), excluding the x87 bit, which are supported by this GDB.
-   */
+     register), excluding the x87 bit, which are supported by this GDB.  */
+
   uint64_t xcr0;
 
   /* Offset of XCR0 in XSAVE extended state.  */
@@ -310,18 +309,22 @@ extern int i386_ymm_regnum_p (struct gdbarch *gdbarch, int regnum);
 
 extern const char *i386_pseudo_register_name (struct gdbarch *gdbarch,
                                              int regnum);
+extern struct type *i386_pseudo_register_type (struct gdbarch *gdbarch,
+                                              int regnum);
+
+extern void i386_pseudo_register_read_into_value (struct gdbarch *gdbarch,
+                                                 struct regcache *regcache,
+                                                 int regnum,
+                                                 struct value *result);
 
-extern void i386_pseudo_register_read (struct gdbarch *gdbarch,
-                                      struct regcache *regcache,
-                                      int regnum, gdb_byte *buf);
 extern void i386_pseudo_register_write (struct gdbarch *gdbarch,
                                        struct regcache *regcache,
                                        int regnum, const gdb_byte *buf);
 
 /* Segment selectors.  */
 #define I386_SEL_RPL   0x0003  /* Requester's Privilege Level mask.  */
-#define I386_SEL_UPL   0x0003  /* User Privilige Level. */
-#define I386_SEL_KPL   0x0000  /* Kernel Privilige Level. */
+#define I386_SEL_UPL   0x0003  /* User Privilige Level.  */
+#define I386_SEL_KPL   0x0000  /* Kernel Privilige Level.  */
 
 /* The length of the longest i386 instruction (according to
    include/asm-i386/kprobes.h in Linux 2.6.  */
@@ -330,7 +333,8 @@ extern void i386_pseudo_register_write (struct gdbarch *gdbarch,
 /* Functions exported from i386-tdep.c.  */
 extern CORE_ADDR i386_pe_skip_trampoline_code (struct frame_info *frame,
                                               CORE_ADDR pc, char *name);
-extern CORE_ADDR i386_skip_main_prologue (struct gdbarch *gdbarch, CORE_ADDR pc);
+extern CORE_ADDR i386_skip_main_prologue (struct gdbarch *gdbarch,
+                                         CORE_ADDR pc);
 
 /* Return whether the THIS_FRAME corresponds to a sigtramp routine.  */
 extern int i386_sigtramp_p (struct frame_info *this_frame);
@@ -377,6 +381,7 @@ extern void i386_svr4_init_abi (struct gdbarch_info, struct gdbarch *);
 
 extern int i386_process_record (struct gdbarch *gdbarch,
                                 struct regcache *regcache, CORE_ADDR addr);
+
 \f
 
 /* Functions and variables exported from i386bsd-tdep.c.  */
@@ -392,4 +397,12 @@ extern int i386nbsd_sc_reg_offset[];
 extern int i386obsd_sc_reg_offset[];
 extern int i386bsd_sc_reg_offset[];
 
+/* SystemTap related functions.  */
+
+extern int i386_stap_is_single_operand (struct gdbarch *gdbarch,
+                                       const char *s);
+
+extern int i386_stap_parse_special_token (struct gdbarch *gdbarch,
+                                         struct stap_parse_info *p);
+
 #endif /* i386-tdep.h */
This page took 0.025237 seconds and 4 git commands to generate.