Back to index

lightning-sunbird  0.9+nobinonly
Classes | Defines
_hpux.h File Reference
#include <syscall.h>
#include <setjmp.h>
#include <poll.h>

Go to the source code of this file.

Classes

struct  _md_in6_addr
struct  _md_sockaddr_in6
struct  _MDThread
struct  _MDThreadStack
struct  _MDLock
struct  _MDSemaphore
struct  _MDCVar
struct  _MDSegment
struct  _MDCPU_Unix
struct  _MDCPU
union  _md_in6_addr._s6_un

Defines

#define PR_LINKER_ARCH   "hpux"
#define _PR_SI_SYSNAME   "HPUX"
#define _PR_SI_ARCHITECTURE   "hppa1.1"
#define PR_DLL_SUFFIX   ".sl"
#define _PR_VMBASE   0x30000000
#define _PR_STACK_VMBASE   0x50000000
#define _MD_DEFAULT_STACK_SIZE   (2*65536L)
#define _MD_MINIMUM_STACK_SIZE   (2*65536L)
#define _MD_MMAP_FLAGS   MAP_PRIVATE
#define NEED_TIME_R
#define HAVE_STACK_GROWING_UP
#define HAVE_DLL
#define USE_HPSHL
#define HAVE_STRERROR
#define _PR_POLL_AVAILABLE
#define _PR_USE_POLL
#define _PR_STAT_HAS_ONLY_ST_ATIME
#define _PR_HAVE_POSIX_SEMAPHORES
#define PR_HAVE_POSIX_NAMED_SHARED_MEMORY
#define _PR_ACCEPT_INHERIT_NONBLOCK
#define _PR_HAVE_GETIPNODEBYNAME
#define _PR_HAVE_GETIPNODEBYADDR
#define _PR_HAVE_GETADDRINFO
#define _PR_INET6_PROBE
#define _PR_HAVE_MD_SOCKADDR_IN6
#define USE_SETJMP
#define _MD_GET_SP(_t)   (*((int *)((_t)->md.jb) + 1))
#define PR_NUM_GCREGS   _JBLEN
#define CONTEXT(_th)   ((_th)->md.jb)
#define _MD_SET_THR_SP(_t, _sp)   ((_MD_GET_SP(_t)) = (int) (_sp + 64 *2))
#define SAVE_CONTEXT(_th)   _setjmp(CONTEXT(_th))
#define GOTO_CONTEXT(_th)   _longjmp(CONTEXT(_th), 1)
#define _MD_INIT_CONTEXT(_thread, _sp, _main, status)
#define _MD_SWITCH_CONTEXT(_thread)
#define _MD_RESTORE_CONTEXT(_thread)
#define _PR_MD_MAX_OSFD   FD_SETSIZE
#define _PR_IOQ(_cpu)   ((_cpu)->md.md_unix.ioQ)
#define _PR_ADD_TO_IOQ(_pq, _cpu)   PR_APPEND_LINK(&_pq.links, &_PR_IOQ(_cpu))
#define _PR_FD_READ_SET(_cpu)   ((_cpu)->md.md_unix.fd_read_set)
#define _PR_FD_READ_CNT(_cpu)   ((_cpu)->md.md_unix.fd_read_cnt)
#define _PR_FD_WRITE_SET(_cpu)   ((_cpu)->md.md_unix.fd_write_set)
#define _PR_FD_WRITE_CNT(_cpu)   ((_cpu)->md.md_unix.fd_write_cnt)
#define _PR_FD_EXCEPTION_SET(_cpu)   ((_cpu)->md.md_unix.fd_exception_set)
#define _PR_FD_EXCEPTION_CNT(_cpu)   ((_cpu)->md.md_unix.fd_exception_cnt)
#define _PR_IOQ_TIMEOUT(_cpu)   ((_cpu)->md.md_unix.ioq_timeout)
#define _PR_IOQ_MAX_OSFD(_cpu)   ((_cpu)->md.md_unix.ioq_max_osfd)
#define _PR_IOQ_OSFD_CNT(_cpu)   ((_cpu)->md.md_unix.ioq_osfd_cnt)
#define _PR_IOQ_POLLFDS(_cpu)   ((_cpu)->md.md_unix.ioq_pollfds)
#define _PR_IOQ_POLLFDS_SIZE(_cpu)   ((_cpu)->md.md_unix.ioq_pollfds_size)
#define _PR_IOQ_MIN_POLLFDS_SIZE(_cpu)   32
#define _MD_INIT_LOCKS()
#define _MD_NEW_LOCK(lock)   PR_SUCCESS
#define _MD_FREE_LOCK(lock)
#define _MD_LOCK(lock)
#define _MD_UNLOCK(lock)
#define _MD_INIT_IO()
#define _MD_IOQ_LOCK()
#define _MD_IOQ_UNLOCK()
#define _MD_INIT_RUNNING_CPU(cpu)   _MD_unix_init_running_cpu(cpu)
#define _MD_INIT_THREAD   _MD_InitializeThread
#define _MD_EXIT_THREAD(thread)
#define _MD_SUSPEND_THREAD(thread)   _MD_suspend_thread
#define _MD_RESUME_THREAD(thread)   _MD_resume_thread
#define _MD_CLEAN_THREAD(_thread)
#define _MD_EARLY_INIT   _MD_EarlyInit
#define _MD_FINAL_INIT   _PR_UnixInit
#define _MD_GET_INTERVAL   _PR_UNIX_GetInterval
#define _MD_INTERVAL_PER_SEC   _PR_UNIX_TicksPerSecond
#define _MD_SELECT(nfds, r, w, e, tv)   syscall(SYS_select,nfds,r,w,e,tv)
#define _MD_POLL(fds, nfds, timeout)   syscall(SYS_poll,fds,nfds,timeout)

Class Documentation

struct _md_in6_addr

Definition at line 115 of file _hpux.h.

Class Members
union _md_in6_addr _S6_un
union _md_in6_addr _S6_un
union _md_in6_addr _s6_un
union _md_in6_addr _S6_un
union _md_in6_addr _S6_un
struct _md_sockaddr_in6

Definition at line 124 of file _hpux.h.

Class Members
PRUint32 __sin6_src_id
PRInt16 sin6_family
PRUint16 sin6_family
PRUint32 sin6_flowinfo
PRUint16 sin6_port
PRUint32 sin6_scope_id
struct _MDThreadStack

Definition at line 165 of file _aix.h.

Class Members
PRIntn cxByteCount
PRUint32 magic
PRInt8 notused
char * stackTop
struct _MDLock

Definition at line 169 of file _aix.h.

Class Members
usptr_t * arena
int32 benaphoreCount
ulock_t lock
PRUint32 magic
PRUint32 mutex
CRITICAL_SECTION mutex
HMTX mutex
PRInt8 notused
sem_id semaphoreID
struct _MDSemaphore

Definition at line 173 of file _aix.h.

Class Members
PRInt8 notused
HEV sem
HANDLE sem
usema_t * sem
sem_id sid
PRInt32 unused
struct _MDCVar

Definition at line 177 of file _aix.h.

Collaboration diagram for _MDCVar:
Class Members
int16 count
PRUint32 magic
ulock_t mdcvar_lock
PRInt8 notused
PRIntn nwait
sem_id sem1
sem_id sem2
PRUint32 unused
struct PRThread * waitHead
struct PRThread * waitTail
struct _MDSegment

Definition at line 181 of file _aix.h.

Class Members
PRUint32 magic
PRInt8 notused
struct _MDCPU_Unix

Definition at line 190 of file _aix.h.

Collaboration diagram for _MDCPU_Unix:
Class Members
PRInt16 fd_exception_cnt
fd_set fd_exception_set
PRInt16 fd_read_cnt
fd_set fd_read_set
PRInt16 fd_write_cnt
fd_set fd_write_set
PRCList ioQ
PRInt32 ioq_max_osfd
PRInt32 ioq_osfd_cnt
struct pollfd * ioq_pollfds
int ioq_pollfds_size
PRUint32 ioq_timeout
struct _MDCPU

Definition at line 221 of file _aix.h.

Collaboration diagram for _MDCPU:
Class Members
PRInt16 fd_exception_cnt
fd_set fd_exception_set
PRInt16 fd_read_cnt
fd_set fd_read_set
PRInt16 fd_write_cnt
fd_set fd_write_set
PRInt32 id
PRCList ioQ
PRInt32 ioq_max_osfd
PRUint32 ioq_timeout
AbsoluteTime lastThreadSwitch
AbsoluteTime lastWakeUpProcess
PRInt32 suspending_id
PRBool trackScheduling
int unused
int8 unused
union _md_in6_addr._s6_un

Definition at line 116 of file _hpux.h.

Class Members
PRUint32 __S6_align
PRUint16 _S6_u16
PRUint32 _S6_u32
PRUint8 _S6_u8

Define Documentation

#define _MD_CLEAN_THREAD (   _thread)

Definition at line 258 of file _hpux.h.

#define _MD_DEFAULT_STACK_SIZE   (2*65536L)

Definition at line 68 of file _hpux.h.

Definition at line 269 of file _hpux.h.

#define _MD_EXIT_THREAD (   thread)

Definition at line 255 of file _hpux.h.

Definition at line 270 of file _hpux.h.

Definition at line 246 of file _hpux.h.

Definition at line 280 of file _hpux.h.

#define _MD_GET_SP (   _t)    (*((int *)((_t)->md.jb) + 1))

Definition at line 140 of file _hpux.h.

#define _MD_INIT_CONTEXT (   _thread,
  _sp,
  _main,
  status 
)
Value:
{ \
    *(status) = PR_TRUE; \
    if (_setjmp(CONTEXT(_thread))) (*_main)(); \
    /* Stack needs two frames (64 bytes) at the bottom */ \
    (_MD_GET_SP(_thread)) = (int) ((_sp) + 64*2); \
}

Definition at line 152 of file _hpux.h.

Definition at line 249 of file _hpux.h.

Definition at line 244 of file _hpux.h.

Definition at line 253 of file _hpux.h.

Definition at line 254 of file _hpux.h.

Definition at line 281 of file _hpux.h.

Definition at line 250 of file _hpux.h.

Definition at line 251 of file _hpux.h.

Definition at line 247 of file _hpux.h.

#define _MD_MINIMUM_STACK_SIZE   (2*65536L)

Definition at line 69 of file _hpux.h.

#define _MD_MMAP_FLAGS   MAP_PRIVATE

Definition at line 70 of file _hpux.h.

Definition at line 245 of file _hpux.h.

#define _MD_POLL (   fds,
  nfds,
  timeout 
)    syscall(SYS_poll,fds,nfds,timeout)

Definition at line 291 of file _hpux.h.

#define _MD_RESTORE_CONTEXT (   _thread)
Value:
{ \
    errno = (_thread)->md.errcode; \
    _MD_SET_CURRENT_THREAD(_thread); \
    _longjmp(CONTEXT(_thread), 1); \
}

Definition at line 169 of file _hpux.h.

Definition at line 257 of file _hpux.h.

#define _MD_SELECT (   nfds,
  r,
  w,
  e,
  tv 
)    syscall(SYS_select,nfds,r,w,e,tv)

Definition at line 288 of file _hpux.h.

#define _MD_SET_THR_SP (   _t,
  _sp 
)    ((_MD_GET_SP(_t)) = (int) (_sp + 64 *2))

Definition at line 146 of file _hpux.h.

Definition at line 256 of file _hpux.h.

#define _MD_SWITCH_CONTEXT (   _thread)
Value:
if (!_setjmp(CONTEXT(_thread))) { \
    (_thread)->md.errcode = errno; \
    _PR_Schedule(); \
    }

Definition at line 160 of file _hpux.h.

Definition at line 248 of file _hpux.h.

Definition at line 91 of file _hpux.h.

#define _PR_ADD_TO_IOQ (   _pq,
  _cpu 
)    PR_APPEND_LINK(&_pq.links, &_PR_IOQ(_cpu))

Definition at line 225 of file _hpux.h.

#define _PR_FD_EXCEPTION_CNT (   _cpu)    ((_cpu)->md.md_unix.fd_exception_cnt)

Definition at line 231 of file _hpux.h.

#define _PR_FD_EXCEPTION_SET (   _cpu)    ((_cpu)->md.md_unix.fd_exception_set)

Definition at line 230 of file _hpux.h.

#define _PR_FD_READ_CNT (   _cpu)    ((_cpu)->md.md_unix.fd_read_cnt)

Definition at line 227 of file _hpux.h.

#define _PR_FD_READ_SET (   _cpu)    ((_cpu)->md.md_unix.fd_read_set)

Definition at line 226 of file _hpux.h.

#define _PR_FD_WRITE_CNT (   _cpu)    ((_cpu)->md.md_unix.fd_write_cnt)

Definition at line 229 of file _hpux.h.

#define _PR_FD_WRITE_SET (   _cpu)    ((_cpu)->md.md_unix.fd_write_set)

Definition at line 228 of file _hpux.h.

Definition at line 108 of file _hpux.h.

Definition at line 107 of file _hpux.h.

Definition at line 106 of file _hpux.h.

Definition at line 113 of file _hpux.h.

Definition at line 89 of file _hpux.h.

Definition at line 112 of file _hpux.h.

#define _PR_IOQ (   _cpu)    ((_cpu)->md.md_unix.ioQ)

Definition at line 224 of file _hpux.h.

#define _PR_IOQ_MAX_OSFD (   _cpu)    ((_cpu)->md.md_unix.ioq_max_osfd)

Definition at line 233 of file _hpux.h.

#define _PR_IOQ_MIN_POLLFDS_SIZE (   _cpu)    32

Definition at line 238 of file _hpux.h.

#define _PR_IOQ_OSFD_CNT (   _cpu)    ((_cpu)->md.md_unix.ioq_osfd_cnt)

Definition at line 234 of file _hpux.h.

#define _PR_IOQ_POLLFDS (   _cpu)    ((_cpu)->md.md_unix.ioq_pollfds)

Definition at line 235 of file _hpux.h.

#define _PR_IOQ_POLLFDS_SIZE (   _cpu)    ((_cpu)->md.md_unix.ioq_pollfds_size)

Definition at line 236 of file _hpux.h.

#define _PR_IOQ_TIMEOUT (   _cpu)    ((_cpu)->md.md_unix.ioq_timeout)

Definition at line 232 of file _hpux.h.

Definition at line 207 of file _hpux.h.

Definition at line 86 of file _hpux.h.

#define _PR_SI_ARCHITECTURE   "hppa1.1"

Definition at line 56 of file _hpux.h.

#define _PR_SI_SYSNAME   "HPUX"

Definition at line 46 of file _hpux.h.

#define _PR_STACK_VMBASE   0x50000000

Definition at line 61 of file _hpux.h.

Definition at line 88 of file _hpux.h.

Definition at line 87 of file _hpux.h.

#define _PR_VMBASE   0x30000000

Definition at line 60 of file _hpux.h.

#define CONTEXT (   _th)    ((_th)->md.jb)

Definition at line 143 of file _hpux.h.

#define GOTO_CONTEXT (   _th)    _longjmp(CONTEXT(_th), 1)

Definition at line 148 of file _hpux.h.

Definition at line 77 of file _hpux.h.

Definition at line 74 of file _hpux.h.

Definition at line 84 of file _hpux.h.

Definition at line 72 of file _hpux.h.

#define PR_DLL_SUFFIX   ".sl"

Definition at line 57 of file _hpux.h.

Definition at line 90 of file _hpux.h.

#define PR_LINKER_ARCH   "hpux"

Definition at line 45 of file _hpux.h.

#define PR_NUM_GCREGS   _JBLEN

Definition at line 141 of file _hpux.h.

#define SAVE_CONTEXT (   _th)    _setjmp(CONTEXT(_th))

Definition at line 147 of file _hpux.h.

Definition at line 81 of file _hpux.h.

Definition at line 138 of file _hpux.h.