Ignore:
Timestamp:
Oct 14, 2008, 6:30:00 PM (13 years ago)
Author:
gz
Message:

Merge/bootstrap assorted low level stuff from trunk - kernel, syscall stuff, lowmem-bias, formatting tweaks, a few bug fixes included

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/lisp-kernel/x86-exceptions.h

    r10944 r11089  
    5555#ifdef X8664
    5656#include <machine/fpu.h>
     57#else
     58#include <machine/npx.h>
     59#endif
    5760#define xpGPRvector(x) ((natural *)(&((x)->uc_mcontext)))
    5861#define xpGPR(x,gprno) (xpGPRvector(x)[gprno])
     
    6063#define eflags_register(xp) xpGPR(xp,Iflags)
    6164#define xpPC(x) xpGPR(x,Iip)
     65#ifdef X8664
    6266#define xpMMXreg(x,n) *((natural *)(&(((struct savefpu *)(&(x)->uc_mcontext.mc_fpstate))->sv_fp[n])))
    6367#define xpXMMregs(x)(&(((struct savefpu *)(&(x)->uc_mcontext.mc_fpstate))->sv_xmm[0]))
     68#else
     69#define xpMMXreg(x,n) *((natural *)(&(((struct savexmm *)(&(x)->uc_mcontext.mc_fpstate))->sv_fp[n])))
     70#define xpXMMregs(x)(&(((struct savexmm *)(&(x)->uc_mcontext.mc_fpstate))->sv_xmm[0]))
    6471#endif
    6572#endif
     
    8895#define eflags_register(xp) xp->EFlags
    8996#define xpFPRvector(x) ((natural *)(&(x->ExtendedRegisters[10*16])))
    90 #define xpMMXreg(x,n)  (xpFPRvector(x)[n])
     97#define xpMMXreg(x,n)  (*((u64_t *)(&(x->FloatSave.RegisterArea[10*(n)]))))
    9198#endif
    9299#endif
Note: See TracChangeset for help on using the changeset viewer.