Print this page
11210 libm should be cstyle(1ONBLD) clean

*** 20,29 **** --- 20,30 ---- */ /* * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ + /* * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */
*** 35,91 **** #include <fenv.h> #include <ucontext.h> #include <thread.h> #include "fex_handler.h" ! int fex_get_handling(int e) { struct fex_handler_data *thr_handlers; int i; thr_handlers = __fex_get_thr_handlers(); for (i = 0; i < FEX_NUM_EXC; i++) if (e & (1 << i)) ! return thr_handlers[i].__mode; ! return FEX_NOHANDLER; } ! int fex_set_handling(int e, int mode, void (*handler)()) { struct fex_handler_data *thr_handlers; int i; if (e & ~((1 << FEX_NUM_EXC) - 1)) ! return 0; thr_handlers = __fex_get_thr_handlers(); for (i = 0; i < FEX_NUM_EXC; i++) { if (e & (1 << i)) { thr_handlers[i].__mode = mode; thr_handlers[i].__handler = handler; } } __fex_update_te(); ! return 1; } ! void fex_getexcepthandler(fex_handler_t *buf, int e) { struct fex_handler_data *thr_handlers; int i; thr_handlers = __fex_get_thr_handlers(); for (i = 0; i < FEX_NUM_EXC; i++) if (e & (1 << i)) (*buf)[i] = thr_handlers[i]; } ! void fex_setexcepthandler(const fex_handler_t *buf, int e) { struct fex_handler_data *thr_handlers; int i; thr_handlers = __fex_get_thr_handlers(); for (i = 0; i < FEX_NUM_EXC; i++) if (e & (1 << i)) thr_handlers[i] = (*buf)[i]; __fex_update_te(); } --- 36,104 ---- #include <fenv.h> #include <ucontext.h> #include <thread.h> #include "fex_handler.h" ! int ! fex_get_handling(int e) { struct fex_handler_data *thr_handlers; int i; thr_handlers = __fex_get_thr_handlers(); + for (i = 0; i < FEX_NUM_EXC; i++) if (e & (1 << i)) ! return (thr_handlers[i].__mode); ! ! return (FEX_NOHANDLER); } ! int ! fex_set_handling(int e, int mode, void (*handler)()) { struct fex_handler_data *thr_handlers; int i; if (e & ~((1 << FEX_NUM_EXC) - 1)) ! return (0); ! thr_handlers = __fex_get_thr_handlers(); + for (i = 0; i < FEX_NUM_EXC; i++) { if (e & (1 << i)) { thr_handlers[i].__mode = mode; thr_handlers[i].__handler = handler; } } + __fex_update_te(); ! return (1); } ! void ! fex_getexcepthandler(fex_handler_t *buf, int e) { struct fex_handler_data *thr_handlers; int i; thr_handlers = __fex_get_thr_handlers(); + for (i = 0; i < FEX_NUM_EXC; i++) if (e & (1 << i)) (*buf)[i] = thr_handlers[i]; } ! void ! fex_setexcepthandler(const fex_handler_t *buf, int e) { struct fex_handler_data *thr_handlers; int i; thr_handlers = __fex_get_thr_handlers(); + for (i = 0; i < FEX_NUM_EXC; i++) if (e & (1 << i)) thr_handlers[i] = (*buf)[i]; + __fex_update_te(); }