Hello. My exams are finally over and I have started to address these points now. I intend to give my most of the time cause of holidays and will try to consider most of the cases for the patch this time .
Thanks, -Tejas On Tue, 21 May 2019 at 03:18, Joseph Myers <jos...@codesourcery.com> wrote: > On Mon, 20 May 2019, Martin Jambor wrote: > > > in addition to the things already pointed out by Joseph, I have the > > following comments. But as Joseph has already pointed out, you should > > also test your patch on __float128 types, so please make sure your code > > gets invoked and works for something like: > > > > if (__builtin_roundevenf128 (0x1p64q+0.5) != (0x1p64q)) > > link_error (__LINE__); > > ... but with the f128 constant suffix not q, so it works on more > architectures (all those with _Float128 support, not just those with older > __float128 support). > > > > +DEF_EXT_LIB_BUILTIN (BUILT_IN_ROUNDEVEN, "roundeven", > BT_FN_DOUBLE_DOUBLE, ATTR_CONST_NOTHROW_LEAF_LIST) > > > +DEF_EXT_LIB_BUILTIN (BUILT_IN_ROUNDEVENF, "roundevenf", > BT_FN_FLOAT_FLOAT, ATTR_CONST_NOTHROW_LEAF_LIST) > > > +DEF_EXT_LIB_BUILTIN (BUILT_IN_ROUNDEVENL, "roundevenl", > BT_FN_LONGDOUBLE_LONGDOUBLE, ATTR_CONST_NOTHROW_LEAF_LIST) > > > > ...and for the code to trigger for __builtin_roundevenf128 you have to > > define this builtin function too. The easiest way is to do it in the > > same way it is done for BUILTIN_ROUND and many other functions, i.e. use > > DEF_EXT_LIB_FLOATN_NX_BUILTINS. > > Also note that TS 18661-1 has been merged into C2X. I haven't yet updated > glibc headers to reflect this, but this means a new DEF_C2X_BUILTIN should > be added similar to DEF_C11_BUILTIN, and used for those three new > functions, instead of DEF_EXT_LIB_BUILTIN. (And for the strdup and > strndup built-in functions, also added to C2X, but that's independent of > the present project.) > > -- > Joseph S. Myers > jos...@codesourcery.com >