Changeset 11250


Ignore:
Timestamp:
Oct 30, 2008, 1:27:38 PM (11 years ago)
Author:
gb
Message:

Try to get xpMMXreg right on x862 Solaris. (It seems to be right
enough to find mm0 in the GC trap handler.)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/lisp-kernel/x86-exceptions.h

    r11241 r11250  
    8080#define xpXMMregs(x)(&((x)->uc_mcontext.fpregs.fp_reg_set.fpchip_state.xmm[0]))
    8181#ifdef X8632
    82 #define xpMMXreg(x,n)(((x)->uc_mcontext.fpregs.fp_reg_set.fpchip_state.state[n]))
     82#define xpMMXreg(x,n)*(natural *)(&(((struct fnsave_state *)(&(((x)->uc_mcontext.fpregs))))->f_st[n]))
    8383#endif
    8484#endif
     
    183183#ifdef SOLARIS
    184184#define SIGNUM_FOR_INTN_TRAP SIGSEGV
     185#ifdef X8664
    185186#define IS_MAYBE_INT_TRAP(info,xp) ((xpGPR(xp,REG_TRAPNO)==0xd)&&((xpGPR(xp,REG_ERR)&7)==2))
     187#else
     188#define IS_MAYBE_INT_TRAP(info,xp) ((xpGPR(xp,TRAPNO)==0xd)&&((xpGPR(xp,ERR)&7)==2))
     189#endif
    186190#define SIGRETURN(context) setcontext(context)
    187191#endif
Note: See TracChangeset for help on using the changeset viewer.