home *** CD-ROM | disk | FTP | other *** search
/ OpenStep 4.2J (Developer) / os42jdev.iso / NextDeveloper / Source / GNU / cctools / include / mach / sparc / thread_status.h
C/C++ Source or Header  |  1994-06-17  |  1KB  |  56 lines

  1. /*
  2.  *  Copyright (c) 1994 by Sun Microsystems, Inc
  3.  */
  4.  
  5. #ifndef    _MACH_SPARC_THREAD_STATUS_H_
  6. #define    _MACH_SPARC_THREAD_STATUS_H_
  7.  
  8. #include <architecture/sparc/reg.h>
  9.  
  10. /*
  11.  *    sparc_thread_state_regs
  12.  *        This is the structure that is exported
  13.  *      to user threads for use in set/get status
  14.  *      calls.  This structure should never change.
  15.  *        The "local" and "in" registers of the corresponding 
  16.  *        register window    are saved in the stack frame pointed
  17.  *        to by sp -> %o6.
  18.  *
  19.  *    sparc_thread_state_fpu
  20.  *        This is the structure that is exported
  21.  *      to user threads for use in set/get FPU register 
  22.  *        status calls.
  23.  *
  24.  */
  25.  
  26. #define    SPARC_THREAD_STATE_REGS    1
  27.  
  28. struct sparc_thread_state_regs {
  29.     struct regs regs;
  30. };
  31.  
  32. #define    SPARC_THREAD_STATE_REGS_COUNT \
  33.             (sizeof(struct sparc_thread_state_regs) / sizeof(int))
  34.  
  35. /*
  36.  *    Floating point unit registers
  37.  */
  38.  
  39. #define SPARC_THREAD_STATE_FPU    2
  40.  
  41.  
  42. struct sparc_thread_state_fpu {
  43.     struct fpu fpu;    /* floating point registers/status */
  44. };
  45.  
  46. #define    SPARC_THREAD_STATE_FPU_COUNT \
  47.             (sizeof(struct sparc_thread_state_fpu) / sizeof(int))
  48.  
  49. #define    SPARC_THREAD_STATE_FLAVOR_COUNT  2
  50.  
  51. #define SPARC_THREAD_STATE_FLAVOR_LIST_COUNT         \
  52.     ( SPARC_THREAD_STATE_FLAVOR_COUNT *              \
  53.         (sizeof (struct thread_state_flavor) / sizeof(int)))
  54.  
  55. #endif    _MACH_SPARC_THREAD_STATUS_H_
  56.