Print this page


Split Close
Expand all
Collapse all
          --- old/usr/src/lib/libm/common/m9x/__fex_hdlr.c
          +++ new/usr/src/lib/libm/common/m9x/__fex_hdlr.c
↓ open down ↓ 386 lines elided ↑ open up ↑
 387  387  
 388  388  /*
 389  389  *  If a handling mode is in effect, apply it; otherwise invoke the
 390  390  *  saved handler
 391  391  */
 392  392  static void
 393  393  __fex_hdlr(int sig, siginfo_t *sip, ucontext_t *uap)
 394  394  {
 395  395          struct fex_handler_data *thr_handlers;
 396  396          struct sigaction        act;
 397      -        void                    (*handler)(), (*simd_handler[4])();
      397 +        void                    (*handler)() = NULL, (*simd_handler[4])();
 398  398          int                     mode, simd_mode[4], i, len, accrued, *ap;
 399  399          unsigned int            cwsw, oldcwsw, mxcsr, oldmxcsr;
 400  400          enum fex_exception      e, simd_e[4];
 401  401          fex_info_t              info, simd_info[4];
 402  402          unsigned long           addr;
 403  403          siginfo_t               osip = *sip;
 404  404          sseinst_t               inst;
 405  405  
 406  406          /* check for an exception caused by an SSE instruction */
 407  407          if (!(uap->uc_mcontext.fpregs.fp_reg_set.fpchip_state.status & 0x80)) {
↓ open down ↓ 442 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX