Print this page
XXX AVX procfs

Split Close
Expand all
Collapse all
          --- old/usr/src/cmd/mdb/common/mdb/mdb_proc.h
          +++ new/usr/src/cmd/mdb/common/mdb/mdb_proc.h
↓ open down ↓ 19 lines elided ↑ open up ↑
  20   20   * CDDL HEADER END
  21   21   */
  22   22  /*
  23   23   * Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
  24   24   * Use is subject to license terms.
  25   25   */
  26   26  
  27   27  #ifndef _MDB_PROC_H
  28   28  #define _MDB_PROC_H
  29   29  
  30      -#pragma ident   "%Z%%M% %I%     %E% SMI"
  31      -
  32   30  #include <mdb/mdb_target_impl.h>
  33   31  #include <mdb/mdb_io_impl.h>
  34   32  #include <mdb/mdb_addrvec.h>
  35   33  #include <mdb/mdb_modapi.h>
  36   34  #include <mdb/mdb_gelf.h>
  37   35  #include <mdb/mdb_tdb.h>
  38   36  
  39   37  #include <sys/param.h>
  40   38  #include <libproc.h>
  41   39  
↓ open down ↓ 16 lines elided ↑ open up ↑
  58   56   * and then switch the ops vector pointer as appropriate during debugging.
  59   57   * The macros defined below expand to calls to the appropriate entry point.
  60   58   */
  61   59  typedef struct pt_ptl_ops {
  62   60          int (*ptl_ctor)(mdb_tgt_t *);
  63   61          void (*ptl_dtor)(mdb_tgt_t *, void *);
  64   62          mdb_tgt_tid_t (*ptl_tid)(mdb_tgt_t *, void *);
  65   63          int (*ptl_iter)(mdb_tgt_t *, void *, mdb_addrvec_t *);
  66   64          int (*ptl_getregs)(mdb_tgt_t *, void *, mdb_tgt_tid_t, prgregset_t);
  67   65          int (*ptl_setregs)(mdb_tgt_t *, void *, mdb_tgt_tid_t, prgregset_t);
  68      -#ifdef  __sparc
  69   66          int (*ptl_getxregs)(mdb_tgt_t *, void *, mdb_tgt_tid_t,
  70   67              prxregset_t *);
  71   68          int (*ptl_setxregs)(mdb_tgt_t *, void *, mdb_tgt_tid_t,
  72   69              const prxregset_t *);
  73      -#endif
  74   70          int (*ptl_getfpregs)(mdb_tgt_t *, void *, mdb_tgt_tid_t,
  75   71              prfpregset_t *);
  76   72          int (*ptl_setfpregs)(mdb_tgt_t *, void *, mdb_tgt_tid_t,
  77   73              const prfpregset_t *);
  78   74  } pt_ptl_ops_t;
  79   75  
  80   76  #define PTL_CTOR(t) \
  81   77          (((pt_data_t *)(t)->t_data)->p_ptl_ops->ptl_ctor(t))
  82   78  
  83   79  #define PTL_DTOR(t) \
↓ open down ↓ 9 lines elided ↑ open up ↑
  93   89          ((pt_data_t *)((t)->t_data))->p_ptl_hdl, (ap)))
  94   90  
  95   91  #define PTL_GETREGS(t, tid, gregs) \
  96   92          (((pt_data_t *)((t)->t_data))->p_ptl_ops->ptl_getregs((t), \
  97   93          ((pt_data_t *)((t)->t_data))->p_ptl_hdl, (tid), (gregs)))
  98   94  
  99   95  #define PTL_SETREGS(t, tid, gregs) \
 100   96          (((pt_data_t *)((t)->t_data))->p_ptl_ops->ptl_setregs((t), \
 101   97          ((pt_data_t *)((t)->t_data))->p_ptl_hdl, (tid), (gregs)))
 102   98  
 103      -#ifdef  __sparc
 104      -
 105   99  #define PTL_GETXREGS(t, tid, xregs) \
 106  100          (((pt_data_t *)((t)->t_data))->p_ptl_ops->ptl_getxregs((t), \
 107  101          ((pt_data_t *)((t)->t_data))->p_ptl_hdl, (tid), (xregs)))
 108  102  
 109  103  #define PTL_SETXREGS(t, tid, xregs) \
 110  104          (((pt_data_t *)((t)->t_data))->p_ptl_ops->ptl_setxregs((t), \
 111  105          ((pt_data_t *)((t)->t_data))->p_ptl_hdl, (tid), (xregs)))
 112  106  
 113      -#endif  /* __sparc */
 114      -
 115  107  #define PTL_GETFPREGS(t, tid, fpregs) \
 116  108          (((pt_data_t *)((t)->t_data))->p_ptl_ops->ptl_getfpregs((t), \
 117  109          ((pt_data_t *)((t)->t_data))->p_ptl_hdl, (tid), (fpregs)))
 118  110  
 119  111  #define PTL_SETFPREGS(t, tid, fpregs) \
 120  112          (((pt_data_t *)((t)->t_data))->p_ptl_ops->ptl_setfpregs((t), \
 121  113          ((pt_data_t *)((t)->t_data))->p_ptl_hdl, (tid), (fpregs)))
 122  114  
 123  115  /*
 124  116   * When we are following children and a vfork(2) occurs, we append the libproc
↓ open down ↓ 117 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX